This section provides a quick introduction of C language, a general purpose and procedural programming language that supports memory address pointers and dynamic memory allocation.
What Is C? -
C is a general purpose programming language developed in 1972 by Dennis Ritchie at Bell Labs.
Initially, there was no formal specification of C language.
The book "The C Programming Language" by Brian Kernighan and Dennis Ritchie published in 1978
served as the informal specification for the first version of C language.
In 1989, American National Standards Institute (ANSI) established a standard specification of C language
called: "ANSI X3.159-1989 - Programming Language C".
In 1999, a major revision of ANSI C specification was published
by the International Organization for Standardization (ISO), "ISO/IEC 9899:1999 - Programming Languages - C".
Main features of C language:
C is a procedural programming language, not an object-oriented programming language. C programs are organized
as modules and functions.
C supports low-level access to memory using address pointers. This makes C language a choice for implementing
C supports array data structure with two ways to access array elements, indexes and pointers.
C supports dynamic memory allocation, which helps to reduce the size of object file generated by the compiler,
and allow arrays to be declared with sizes determined at runtime.
C supports a large number of library routines for input/output operations, string manipulations,
mathematical functions, etc.
C uses a header file to share declarations of variables and functions of a program module with other modules.
C does not do bounds checking on arrays. This often leads to un-desired behaviors during program execution.
The picture below shows the cover page the book: "The C Programming Language"
by Brian Kernighan and Dennis Ritchie published in 1978: