For the complete list of the tutorial on this blog, you can check these following links:
1. Introduction
2. First C-Program
3. Types and Variables
4. Conditional Statements
5. Function and Math Operations
6. Arrays
7. Pointers
8. I/O in C
Probably, you will see C-language as nothing special. You might even say C sucks compared to Java, Ruby or Python nowadays. But, is it? Well, if you start coding from 90s, probably you’ve encountered a hard time developing with Fortran
, or Assembly
and C came as a saviour from the darkness, it’s like a programming heaven.
There are several top reasons why C is still a good language to learn, here I’ve compiled some.
C has nice syntax
As a language that often interacts with the machine, C is considered to be a pretty language with beautiful syntax.
As we can see, Pygments
rendered C-syntax (with line numbers) beautifully. Now, time for a trivia. Can you guess, how many programmers which are saved by C-syntax from obfuscating codes? Count me one!
C macros are the best
Macros is one of the most important preprocessor #
implementation in C. It can be used to create a fast function without putting everything on the stack. Check this out,
In line:4, we define the macro function MACRO_OR
that takes a and b as an input. Then, this macro will return the logical OR
result from a and b. Super neat!
In line:12, the macro is invoked to compute the logical OR
between a and b and return the result to c.
C is small
C utilised merely variables, macros, functions and structures. Therefore, C is considered small in size, complexity and that much of it. Due to this, C has been heavily used on embedded system, modern microprocessor, even modern Arduino
.
More about this, lot of parallel programming languages, OpenMP, OpenCL, CUDA, etc, are based on C language due to its relative connection to lower level hardware compared with other languages.
C is root of all goodness
You can pretty much stand on opinion that C is different compared to C++ or ObjectiveC, but from pedagogical approach, lot of programming expert will tell you to learn basic things from C, e.g. overflow, memory addressing, pointer, profiling and debugging. A true concept of those languages can be learned from C.
C is alive and sound
The number one reason C is the best programming language today is still the fact that it simply powers everything. From your phone to your Wii
, no other language provides the level of hardware interaction with the practicality of a concise and expressive syntax. Unless you’re still using an early IBM
(please switch soon, if so), the screen you’re reading this article on is probably powered by C.
With C, we can forget writing thousands of complex Assembly routines, thousands of processor-specific instructions, and spaghetti like code. Because of C, the CPU, memory, and graphics cards have turned from their messy, low-level pasts into an easier, readable format
Well, I hope this is quite enough motivation for you to start learning C more than just for gaining basic programming language skill. Then when it comes the time when you woke up at the wrong side of the bed, you aren’t rambling about how bad, stressful, and obfuscated low-level programming is.
So, are you ready now? If yes, then let’s get started on writing your first program on the next tutorial.