Followers

Tuesday, November 17, 2009

Difference between C and C++

Actually c is a procedural programming language which
cann't face the real world problem. It has some drawback
like a global data is shared by all function and if in a
large program it is find out difficult that which function
uses which data.

On the other hand c++ is an object oriented programming
language which eliminate some pitfall of conventional or
procedural programming language. It is a concept or
approach for designing a new software. It is nothing to do
with any programming language although a programming
language which support the oops concept to make it easier
to implement.

in c we use scanf function as standard input function,while
in c++ we use streame cin>> for input.like this for output
in c we use printf function,while in c++ we use cout<< as a
output function.

in c we use #includeas iclusion file,while in c++
we use #includeas inclusion file.

This is the main difference between c and c++.


C - C++

DATA IS NOT SECURED - SECURED

TOP DOWN - BOTTOM-UP

FOCUS ON PROCEDURES - FOCUS ON DATA

PROGRAMS ARE DECOMPOSED - INTO OBJECTS
INTO FUNCTIONS

allocation is done - NEW OPERATOR
with malloc statement

UNOINS AND ENUMS - AVALIABLE
ARE NOT AVALIABLE

DOES NOT PROVIDE - PROVIDES
DEFAULT ARGUMENTS


* C does not have any classes or objects. It is procedure and function driven. There is no concept of access through objects and structures are the only place where there is a access through a compacted variable. c++ is object oriented.


* C structures have a different behaviour compared to c++ structures. Structures in c do not accept functions as their parts.


* C input/output is based on library and the processes are carried out by including functions. C++ i/o is made through console commands cin and cout.


* C functions do not support overloading. Operator overloading is a process in which the same function has two or more different behaviours based on the data input by the user.


* C does not support new or delete commands. The memory operations to free or allocate memory in c are carried out by malloc() and free().


* Undeclared functions in c++ are not allowed. The function has to have a prototype defined before the main() before use in c++ although in c the functions can be declared at the point of use.


* After declaring structures and enumerators in c we cannot declare the variable for the structure right after the end of the structure as in c++.


* For an int main() in c++ we may not write a return statement but the return is mandatory in c if we are using int main().


* In C++ identifiers are not allowed to contain two or more consecutive underscores in any position. C identifiers cannot start with two or more consecutive underscores, but may contain them in other positions.


* C has a top down approach whereas c++ has a bottom up approach.


* In c a character constant is automatically elevated to an integer whereas in c++ this is not the case.


* In c declaring the global variable several times is allowed but this is not allowed in c++.

No comments: