Features of C Language

C is widely used language because it is reliable, simple and easy to use. It provides a lot of features that are given below:

Simple

Robust

Portable

Machine Independent

Mid-level language

Structured language

Rich Library

Memory Management

Efficient and Fast speed

Pointers

Recursion

Extensible (Easy to extend)

Let’s see the brief overview of above c language features:

1. Simple

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.

3. Portable

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).

10. Pointers

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.

11. Recursion

The process in which a function calls itself directly or indirectly. It means we can call the function within the function.