The following are the key differences between C and C++
|1. C language is said to be procedural programming language.||1. C++ language is said to be object oriented programming language.|
|2. Data is less secure in C.||2. Data is more secure in C++.|
|3. C language uses top-down approach||3. C++ programming language uses bottom-up approach.|
|4. scanf ( ) and printf ( ) function is used for input/output operations.||4. cin and cout stream are used in C++ for input/output operations.|
|5. C does not support the concept of function overloading.||5. C++ implements the concept of function overloading.|
|6. C does not have direct support for exception handling and error handling.||6. C++ provides the concept of exception handling and thus maintains the normal flow of execution of any program.|
|7. C does not support the concept of inheritance and re-usability.||7. C++ implements program re-usability concept with the help of inheritance.|
|8. Operator overloading is not supported in C language.||8. C++ provides the features of operator overloading.|
|9. C does not support references, inline functions, templates, etc.||9. C++ provides the features of references, inline function, templates, streams for console and file manipulation along with templates.|
|10.C is a function driven programming language.||10. C++ is a object- driven language.|
Some more points C vs C++
- Almost all C programs are C++ programs but vice versa is not true. There are few differences that one should prevent a C program to run under C++ compiler.
- The most important features C++ adds on to C language are classes, inheritance, function overloading and operator overloading.
- The object oriented features in C++ allow programmers to build large programs with clarity and ease of maintenance.
- C++ is easily compatible with the development of editors, compilers, databases and can simulate real-life applications.
- The C part of C++ gives the language the ability to get close to the machine-level details.
- C++ programs are easy to maintain and expand. It is very easy to add any new feature to an object based programming rather than traditional programming.