Learn C: A beginner's guide

By Vaibhav Kaushal Published Date
12 - Oct - 2011
| Last Updated
12 - Oct - 2011
Learn C: A beginner's guide

Being able to edit your system registry and mod your phone is great. As a matter of fact, doing such stuff is cool, but not really impossible; ask someone who does it every weekend. Sooner or later, after you’ve progressed from tinkering around with software, you’d want your computer to do exactly what you want. Whether or not you have been trying out all kinds of software or are familiar with programming, we’ll help you in beginning this journey. The language we would start off with, is C.

Why C?

C is powerful, fast and efficient. It gives you low-level access to the system and enables you to manage memory effectively. Yes, I know; it gets boring when you talk low-level access, memory management and efficiency. Unless you’re already familiar with programming, this could sound cryptic.
Each language has its own merits and demerits; and you could use any to serve your objective. The difference lies in the methodology and strategy. The reason we’ve picked C is because it helps you understand computers (and hence computing) in a more 'appropriate' way. It will teach you about the things you must take care of, and those factors that are not under your control.
We also hear a lot about C . Similar to C, C is also a language by itself. In fact, it is a super-set of C; which means, C can do anything and everything which C can, and more. By more, we mean ‘classes’, which help you create programs more easily under certain circumstances and are helpful in general because of the additional features they bring to the C syntax.

The roadmap

We would first learn about programming basics. Whether you’re an amateur or are remotely familiar with programming, this will help you learn new concepts or brush up your basic fundamentals and build your confidence in programming by yourself. We invite your constant feedback to make this an exciting series for the larger community as a whole.
We would then proceed with simple tasks such as making the computer accept your inputs and display an output based on your instructions: this could be basic calculations or carrying out logical decisions. Later, we’ll proceed ahead and learn how to do more with relatively lesser effort (by using functions). After this, we advance into the real world features of C which include pointers and structures and go on using them to see how data structures are built and used in C.
After this, we will introduce to you C and what it adds to the feature list of C and how to use them. This will be easy because C is the subset of C and a large part of C is simply C. Beyond this, some advanced topics will be explained and its going to be interesting. 

Uses of C

The number of possibilities with C (and C ) are endless. You’re only limited by your imagination. From the world's simplest of programs to the most complex software, all and everything can be created in C. 
It is the C, in which databases are written, and that would include MySQL and PostgreSQL as well. The immensely popular language 'PHP', too has been written in C. KDE and Gnome, the popular Desktop managers for Linux are written in C and C respectively. The best of it – most operating systems including Windows, Mac OS X and Linux are written in C.
So let us keep things simple and start off learning the language computers love the most. Please join us on our official Facebook page, follow us on Twitter (@devworx) and LinkedIn page to discuss, and share your opinions on this article, which is part of a larger series on C, C and programming concepts. For this series, we do not assume any familiarity or skill with programming.
Vaibhav KaushalVaibhav Kaushal