History of C Language |
The C Language is developed by Dennis Ritchie in 1970's at Bell Laboratories for creating system applications that directly interact with the hardware devices such as drivers, kernels etc. C programming is considered as the base for other programming languages, that is why it is known as mother language. The C language is derived from the language B, which was written by Ken Thompson at AT&T Bell Laboratories. The B language was adopted from a language BPCL (Basic combined programming language).
It can be defined by the following ways:
1) It is a Mother language
2) System programming language
3) Procedure-oriented programming language
4) Structured programming language
5) Mid-level programming language
1) C as a mother language
C language is considered as the mother language of all the
modern programming languages because most of the compilers, JVMs,
Kernels, etc. are written in C language, and most of the
programming languages follow C syntax, for example, C++, Java,
C#, etc.It provides the core concepts like the array, strings,
functions, file handling, etc. that are being used in many
languages like C++, Java, C#, etc.
2) C as a system programming language
A system programming language is used to create system software.
C language is a system programming language because it can be
used to do low-level programming (for example driver and
kernel). It is generally used to create hardware devices, OS,
drivers, kernels, etc. For example, Linux kernel is written in
C. It can't be used for internet programming like Java, .Net,
PHP, etc.
3) C as a procedural language
A procedure is known as a function, method, routine, subroutine,
etc. A procedural language specifies a series of steps for the
program to solve the problem. A procedural language breaks the
program into functions, data structures, etc. C is a procedural
language. In C, variables and function prototypes must be
declared before being used.
4) C as a structured programming language
A structured programming language is a subset of the procedural
language. Structure means to break a program into parts or
blocks so that it may be easy to understand. In the C language,
we break the program into parts using functions. It makes the
program easier to understand and modify.
5) C as a mid-level programming language
C is considered as a middle-level language because it supports
the feature of both low-level and high-level languages. C
language program is converted into assembly code, it supports
pointer arithmetic (low-level), but it is machine independent (a
feature of high-level). A Low-level language is specific to one
machine, i.e., machine dependent. It is machine dependent, fast
to run. But it is not easy to understand. A High-Level language
is not specific to one machine, i.e., machine independent. It is
easy to understand.
Limitations