C is widely used language because it is reliable, simple and easy to use. It provides a lot of features that are given below:
- Machine Independent
- Mid-level language
- Structured language
- Rich Library
- Memory Management
- Efficient and Fast speed
- Extensible (Easy to extend)
Let’s see the brief overview of above c language features:
C is a simple language because it has a rich set of library functions, data types, classes, objects, inheritance, polymorphism, templates, exception handling, references, etc.
2. Robust Language
It is a robust language with a rich set of built-in functions and operators that can be used to write any complex program.
C is portable language this means that programs once are written can be run on another machine with little or no modification.
4. Machine Independent
Unlike assembly language, c programs can be executed on many machines with a little bit or no change. But it is not platform-independent.
5. Mid-level language
C is low-level language because It is used to develop system applications such as kernel, driver etc. It also supports the feature of high-level programming language. Hence, it is known as mid-level language.
6. Structured language
We can break the program into parts using functions. So, it is easy to understand and modify.
7. Rich library
A C program has a lot of inbuilt collection of functions that are supported by C library. We can also create our own function and add it to C library.
8. Memory Mangement
C supports dynamic memory allocation via a group of functions in the C standard library, namely malloc, realloc, calloc and free. In C language, we can free the allocated memory at any time by calling the free() function.
9. Efficient and Fast speed
Compilation and execution of c is fast because of dynamic memory allocation. (but you should know the c language is not faster than modern langauge like Modern Fortran).
Pointers saves memory and run faster because it does not have to duplicate the data. We can directly interact with the memory by using the pointers. we can use pointers in memory, structures, functions, array etc.
The process in which a function calls itself directly or indirectly. It means we can call the function within the function.
12. Easy to extend
It can easily adopt new feature because c contain shared library.