C++ adds keywords that are not reserved by the C language. If a C program uses any of
those key words as identifiers for function or variables, a C++ compiler cannot compile
the C program.
C programmers can omit function prototypes but C++ programmers cannot.
A C function prototype with no function parameter must include the keyword void in the
parameter list, whereas a C++ function prototype uses an empty parameter list.
C++ Improvements on C Features:
C++ inline function can be used instead of C’s #define macros that have arguments.
C++ const variable declaration can be used instead of C’s #define statements that equate
values to symbols.
The C++ new and delete memory allocation operators replace standard C’s malloc and
free functions.
The standard C++ string class replace the character array processing functions declared in
the standard C library’s header file.
The C++ iostream class library replaces standard C’s stdio function library for input and
output.
C++ try/catch/throw exception handling mechanism replaces standard C’s setjmp/longjmp
functions.