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

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

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

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

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

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

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

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

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

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

11. in c a character constant is automatically elevated to and integer whereas in c++ this is not the case.

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