C Overview
C Overview
What is C?
- Since the late 19th century, C has been a popular programming language for general-purpose use.
- C language was developed by Dennis M. Ritchie at bell laboratory in early 1970s
- Its applications are very diverse. It ranges from developing operating systems to databases and all. It is system programming language used to do low level programming (e.g., driver or kernel)
- Even if it’s old, it is still a very popular programming language.
- As the whole UNIX operating system was written in C, it has a strong association with the operating system
- C has also been used widely while creating iOS and Android kernels.
- MySQL database is written using C.
- Ruby and Pearl are mostly written using C.
- Most part of Apache and NGINX is written using C.
- Embedded Systems are created using C
Why should we learn C/ Features of C?
- As mentioned above, it is one of the most popular programming languages in the world.
- Learning any other popular programming language such as Python or C++ becomes a cakewalk already if you know C.
- C is a flexible language and that gets proven by the fact that it can be used in a variety of applications as well as technologies.
- C is very fast when compared to other programming languages be it Java or Python.
- C takes only significant CPU time for interpretation. That is why a lot of Python libraries such as NumPy, pandas, Scikit-learn, etc. are built using C.
- Being close to Machine language, some of its functions include direct access to machine-level hardware APIs.
It is a structural language (Follows a specific Structure) /Compiled language this point should be added
It is procedural programming language (POP) Procedurall Programming is the use of code in a step-wise procedure to develop applications.
How is it different from C++?
- The syntax of C++ is almost identical to that of C, as C++ was developed as an extension of C.
- In contrast to C, C++ supports classes and objects, while C does not.
- C gives most of the control to the hand of users. Things like memory allocation and manipulation are totally in the hands of the programmer. Being a flexible language, it provides more access to the programmer because of which it is more efficient.
.C is POP(procedure oriented programming) whereas c++ is OOP(Object oriented programming)