C Vs C++ - Javatpoint
What is C?
C is a structural or procedural oriented programming language which is machine-independent and extensively used in various applications.
C is the basic programming language that can be used to develop from the operating systems (like Windows) to complex programs like Oracle database, Git, Python interpreter, and many more. C programming language can be called a god's programming language as it forms the base for other programming languages. If we know the C language, then we can easily learn other programming languages. C language was developed by the great computer scientist Dennis Ritchie at the Bell Laboratories. It contains some additional features that make it unique from other programming languages.
What is C++?
C++ is a special-purpose programming language developed by Bjarne Stroustrup at Bell Labs circa 1980. C++ language is very similar to C language, and it is so compatible with C that it can run 99% of C programs without changing any source of code though C++ is an object-oriented programming language, so it is safer and well-structured programming language than C.
Let's understand the differences between C and C++.
The following are the differences between C and C++:
- DefinitionC is a structural programming language, and it does not support classes and objects, while C++ is an object-oriented programming language that supports the concept of classes and objects.
- Type of programming languageC supports the structural programming language where the code is checked line by line, while C++ is an object-oriented programming language that supports the concept of classes and objects.
- Developer of the languageDennis Ritchie developed C language at Bell Laboratories while Bjarne Stroustrup developed the C++ language at Bell Labs circa 1980.
- SubsetC++ is a superset of C programming language. C++ can run 99% of C code but C language cannot run C++ code.
- Type of approachC follows the top-down approach, while C++ follows the bottom-up approach. The top-down approach breaks the main modules into tasks; these tasks are broken into sub-tasks, and so on. The bottom-down approach develops the lower level modules first and then the next level modules.
- SecurityIn C, the data can be easily manipulated by the outsiders as it does not support the encapsulation and information hiding while C++ is a very secure language, i.e., no outsiders can manipulate its data as it supports both encapsulation and data hiding. In C language, functions and data are the free entities, and in C++ language, all the functions and data are encapsulated in the form of objects.
- Function OverloadingFunction overloading is a feature that allows you to have more than one function with the same name but varies in the parameters. C does not support the function overloading, while C++ supports the function overloading.
- Function OverridingFunction overriding is a feature that provides the specific implementation to the function, which is already defined in the base class. C does not support the function overriding, while C++ supports the function overriding.
- Reference variablesC does not support the reference variables, while C++ supports the reference variables.
- KeywordsC contains 32 keywords, and C++ supports 52 keywords.
- Namespace featureA namespace is a feature that groups the entities like classes, objects, and functions under some specific name. C does not contain the namespace feature, while C++ supports the namespace feature that avoids the name collisions.
- Exception handlingC does not provide direct support to the exception handling; it needs to use functions that support exception handling. C++ provides direct support to exception handling by using a try-catch block.
- Input/Output functionsIn C, scanf and printf functions are used for input and output operations, respectively, while in C++, cin and cout are used for input and output operations, respectively.
- Memory allocation and de-allocationC supports calloc() and malloc() functions for the memory allocation, and free() function for the memory de-allocation. C++ supports a new operator for the memory allocation and delete operator for the memory de-allocation.
- InheritanceInheritance is a feature that allows the child class to reuse the properties of the parent class. C language does not support the inheritance while C++ supports the inheritance.
- Header fileC program uses <stdio.h> header file while C++ program uses <iostream.h> header file.
Let's summarize the above differences in a tabular form.
No. | C | C++ |
---|---|---|
1) | C follows the procedural style programming. | C++ is multi-paradigm. It supports both procedural and object oriented. |
2) | Data is less secured in C. | In C++, you can use modifiers for class members to make it inaccessible for outside users. |
3) | C follows the top-down approach. | C++ follows the bottom-up approach. |
4) | C does not support function overloading. | C++ supports function overloading. |
5) | In C, you can't use functions in structure. | In C++, you can use functions in structure. |
6) | C does not support reference variables. | C++ supports reference variables. |
7) | In C, scanf() and printf() are mainly used for input/output. | C++ mainly uses stream cin and cout to perform input and output operations. |
8) | Operator overloading is not possible in C. | Operator overloading is possible in C++. |
9) | C programs are divided into procedures and modules | C++ programs are divided into functions and classes. |
10) | C does not provide the feature of namespace. | C++ supports the feature of namespace. |
11) | Exception handling is not easy in C. It has to perform using other functions. | C++ provides exception handling using Try and Catch block. |
12) | C does not support the inheritance. | C++ supports inheritance. |
Từ khóa » C Vs Cpp
-
Difference Between C And C++. - Tutorialspoint
-
Difference Between C And C++ - GeeksforGeeks
-
C Vs C++ – What's The Difference? - FreeCodeCamp
-
Difference Between C And C++ Programming Languages
-
Difference Between C And C++ - InterviewBit
-
Difference Between C And C++ Programming Language
-
C Vs C++: 39 Main Differences Between C And C++ With Examples
-
Difference Between C And C++ - Guru99
-
C Vs C++ | 18 Amazing Differences You Need To Know - EduCBA
-
C Vs. C++
-
C Vs C++
-
C Vs C++ Performance | Find Out The 8 Awesome Differences - EduCBA
-
C++ Vs C: Which Language Should You Learn? - Career Karma
-
Should I Learn C Or C++? - Udacity