‘C’ seems a strange name for a programming language. But this strange sounding language is one of the most popular computer language today because it is structured, high level, machine independent language. It allows software developers to develop programs without worrying about the hardware platforms where they will be implemented. The root of all modern language is ALGOL, introduced in the early 1960s. C was evolved from ALGOL, BCPL and B by Dennis Ritchie at the Bell Laboratories in 1972.
C uses many concepts from these languages and added the concepts of data types and other powerful features. Since it was developed along with UNIX operating system, it is strongly associated with UNIX. During 1970’s, C had evolved what is known as ‘traditional C’. To assure that C language remains standard, in 1983, American National Standards Institute(ANSI) appointed a technical committee to define a standard for C. The committee approved a version of C in December 1989 which is now known as ANSI C. It was then approved by International Standards Organization(ISO) in 1990. This version of C is also referred as C89.
The increasing popularity of C is probably due to its many desirable qualities. It is a robust language whose rich set of built-in functions and operators can be used to write any complex program. The C compiler combines the capabilities of an assembly language with features of a high level language and therefore it is well suited for writing both system software and business packages. In many of C compilers available in market are written in C. Programs written in C are efficient and fast. This is due to its variety of data types and powerful operators. C is highly portable. This means that C programs written for one computer can run on another with a little or no modification. Portability is important if we plan to use a new computer with different operating system. C language is well suited for structured programming, thus requiring the user to think of a problem in terms of function modules or blocks.
A proper collection of these modules would make a complete program. This modular structure makes program debugging, testing and maintenance easier. Another important feature of C is its ability to extend itself. A C program is basically collections of function that are supported by the C library. We can continuously add our own function to C library. With the availability of large number of functions, the programming tasks become simple. I know most of you are not getting good tutorials on C programming. I think you can get the best C programming tutorial and largest collection of source code at http://www.thecodehunt.com which is a well organized site, especially for the newbies.