0% found this document useful (0 votes)
58 views

What Is C?: The Following Are The Differences Between C and C++

C is a procedural programming language that does not support object-oriented programming concepts like classes and objects. C++ builds on C and is an object-oriented language that adds support for classes, objects, inheritance, function overloading and overriding, and other object-oriented features. Some key differences are that C++ supports concepts like classes, inheritance, and exception handling that C lacks, and C++ is designed with a stronger emphasis on security and information hiding than C.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views

What Is C?: The Following Are The Differences Between C and C++

C is a procedural programming language that does not support object-oriented programming concepts like classes and objects. C++ builds on C and is an object-oriented language that adds support for classes, objects, inheritance, function overloading and overriding, and other object-oriented features. Some key differences are that C++ supports concepts like classes, inheritance, and exception handling that C lacks, and C++ is designed with a stronger emphasis on security and information hiding than C.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

C vs.

C++
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.

The following are the differences between C and C++:

o Definition
C 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.
o Type of programming language
C 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.
o Developer of the language
Dennis Ritchie developed C language at Bell Laboratories while Bjarne Stroustrup
developed the C++ language at Bell Labs circa 1980.
o Subset
C++ is a superset of C programming language. C++ can run 99% of C code but C
language cannot run C++ code.
o Type of approach
C 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.
o Security
In 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.
o Function Overloading
Function 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.
o Function Overriding
Function 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.
o Reference variables
C does not support the reference variables, while C++ supports the reference variables.
o Keywords
C contains 32 keywords, and C++ supports 52 keywords.
o Namespace feature
A 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.
o Exception handling
C 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.
o Input/Output functions
In 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.
o Memory allocation and de-allocation
C 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.
o Inheritance
Inheritance 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.
o Header file
C 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 C++ is multi-paradigm. It supports


programming. 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 C++ follows the bottom-up


approach. approach.

4) C does not support function C++ supports function overloading.


overloading.

5) In C, you can't use functions in In C++, you can use functions in


structure. structure.

6) C does not support reference C++ supports reference variables.


variables.

7) In C, scanf() and printf() are C++ mainly uses stream cin and


mainly used for input/output. cout to perform input and output
operations.

8) Operator overloading is not Operator overloading is possible in C+


possible in C. +.

9) C programs are divided C++ programs are divided


into procedures and modules into functions and classes.

10) C does not provide the feature of C++ supports the feature of
namespace. namespace.

11) Exception handling is not easy in C++ provides exception handling


C. It has to perform using other using Try and Catch block.
functions.

12) C does not support the C++ supports inheritance.


inheritance.

You might also like