What is C ?
C is a structured, high-level, machine-independent programming language developed by Dennis MacAlistair Ritchie between 1969 to 1973 at Bell Labs, USA for the purpose of System Programming on Unix Operating System.
- Martin Richards developed BCPL (Basic Combined Programming Language) which inspired Ken Thompson to write B Language.
- Ken Thompson created B and write whole Unix Operating System in B Language.
- Dennis Richie, created C as a system implementation language for Unix OS inspired by BCPL (As Grandparent) & B (As Parent).
- BCPL & B – Both were “typeless”, while C Language clearly defined data type.
- Ken Thompson along with Dennis Ritchie re-written larger parts of the Unix OS in C as it was more powerful then B.
- C Language made Unix OS portable to all major computers.
- First C Manual/Book published by Brian Kerningham & Dennis Ritchie titled – “The C Programming Language’ with initials of authors (K&R),thus C got popular and called K&R C.
- ANSI (American National Standards Institute) appointed committee to standardize C Language in 1983 which was released in 1989 & called ANSI C, Standard C or C89
- In 1990 ISO adopted ANSI C thus C89 referenced also as ANSI/ISO C or C90.
- The C standard was further revised in the late 1990s, leading to the publication of ISO/IEC 9899:1999 in 1999, which is commonly referred to as “C99”
- Last Stable Release of ISO/IEC Standard C called C11 and was revised in 2004 with several new features added.
Why Learn C ?
- C is easy to learn, portable to nearly any machine including PC to Super Computers.
- C provides clearly defined data type as well as wide variety of operators.
- C have rich functions libraries & can be extended by adding user-defined(programmer) library.
- C is written in assembly, made for system implementation & having libraries so can be used to create nearly any kind of program including compilers/editors etc as well as business application packages.
- Most Major Modern Technologies such as Oracle (Database), PHP(Server Side Scripting), Linux OS, Android Mobile OS, MySQL are written in C.