There were large numbers of programming languages in the world today-C++, Java, Ada, BASIC, COBOL, Pascal, Smalltalk, FORTARAN, etc. Even so, there are several reasons to learn C; some of which are listed as follows:

  • C is common language in the world today.

  • C is small language. C has only 32 keywords ( and only about twenty of them are in common use). This makes it relatively easy to learn compared with bulkier languages.

  • C is stable language. The ANSI standard for C was created in 1983. The language has not been revised since then. However, this does not mean that all C code is standard. In newer languages, without mentioning any names, the standard changes regularly and often. So, what is a good code today may not compile properly tomorrow.

  • C is quick language. A well written C program is likely to be as quick as or quicker than a well-written program in any other high-level language.

  • C is core language. Having learnt C, it will be much easier to learn languages that are largely or in part based upon C. Such languages include C++, Java, and Perl.

  • Indeed, it is often said that C is the second best language for any given programming task. The best language depends on the nature of thew particular task but the second best language is C, whatever be the task.

Know about C programming and the reason behind it's success. Also read about the future of C programming.

The story of C is not yet over. During the time when the X3J11 committee moved steadily towards producing the ANSI C standard, another researcher, Bjarne Stroustrup of Bell Laboratories began experimenting with an obect- oriented flavor of C that he called C++ ( pronunced C plus plus). C++ extended C and according to Stroustrup, redefined the language, making C++, in his words, ‘a better C’.

Apparently , the X3J11 committee agreed, if not completely, and they adopted some of Stroustrup proposals into the the ANSI C standard. Subsequently, a new committee was formed to investigate a standard for ANSI C++ that is now ready. Does this new standard ,mean that ANSI C is destined to join its ancestors BCPL, B, and K&R C on the heap of discarded programming languages?

The answer is a solid no. Frankly, C++ is not for everyone. When learning C, it is best to stick to the basics, and readers would be well advised to ignore some of the more advanced elements found in C++. For example, C++ provides classes for object-oriented programming, or OOP as it is known. Until one knows C, one is not ready for OOP.

On the other hand, because C++ is based on ANSI C, one may as well use modern next generation C++ compilers to write C programs. That way, one can take advantages of both worlds. After learning C, one is ready to tackle OOP and other advanced C++ subjects.