C programming language discovered by Denis Richie between 1968 to 1973 during the development of Unix Operating System.
C language is general purpose and imperative procedural language.
(Set of statements(Imperative)->Set of functions(procedure)->C program).
Cross-platform program compilation with minimal changes in program and its low-level capabilities makes it all-time favorite programming language for vendors.C language is very close to machine language. machine instructions and memory can directly map in this programming language.
Due to its low-level capabilities, C language took over assembly language
Due to its popularity, C has been standardized by ANSI and ISO in 1989.Many languages like C++, Java, C#, PHP, Python, and many more languages are directly or indirectly borrowed from C.
As time passes, several changes and new features added to make it a more and more powerful language. these C stages categorize as follows-
It was the first edition of the C language “The C Programming Language“.Since it was published by Brian Kernighan and Dennis Ritchie so this edition was famous for their last name alphabets “K&R”.
x =-10 may be treated as x = -10
so to make it clear K&R C changes it as x – =10.
Argument validation doesn’t perform by k&R C compiler in Function prototype declaration.
float add (float arg1, float arg2); //function prototype
float sum; sum= add(4,5); //calling function pass integer value
float add (int arg1,int arg2) /*definition accept integer argument*/
Output: K&R c Compiler will not give any error while the difference in declaration and definition argument because here the argument is not validated by the compiler.The only function those have non-int return type need to declare.
Many more features like the void, struct, union and enumerated data type addition by different vendors in following years. This additional feature causes a lack of agreement on the standard library.
Due to Its popularity, ANSI forms a committee to make a standard specification of C.In 1989 ANSI release second ratified edition of C “Programming Language C”.this is also known as ANSI C/C89.In 1990 ANSI C standard was adopted by ISO and it is also known as C89 or C90.
ISO C90 was revised in 1999 and named as “C99”.
This revision is done in 2011.
To complete embedded C requirement C language has done some non- standard features addition. It is additional support for Embedded System.
Although C learning is not mandated for all programmer, its all depend on your requirement yet I will recommend it if you are new to programming.
C language learning makes you more understanding towards other languages because I told you already almost every language has taken some features of C directly or indirectly.
But don’t worry if you are willing to jump on your desired language then no problem, you can. But if you are planning to learn C++ or Embedded C then you must be familiar with C language.
Future of C language will never end because the base of every language is C language.An operating system for all platform, compiler writing, Micro-controller programming, Device Driver programming, and all firmware programming is written in C language so I think C will maintain its scope.