C Plus Plus

The 'C' programming language was originally developed for and implemented on the UNIX operating system, on a DEC PDP-11 by Dennis Ritchie. One of the best features of C is that it is not tied to any particular hardware or system. This makes it easy for a user to write programs that will run without any changes on practically all machines. C is often called a middle-level computer language as it combines the elements of high-level languages with the functionalism of assembly language.

C allows the manipulation of bits, bytes and addresses- the basic elements with which the computer functions. Another good point about C is its portability which makes it possible to adapt software written for one type of computer to another. C was created, influenced, and field tested by working programmers. The end result is that C gives the programmer what the programmer wants. C offers the speed of assembly language and the extensibility of FORTH, but few of the restrictions of Pascal and Modula-2.

C++ is an enhanced version of the C language. C++ includes everything that is part of C and adds support for object-oriented programming (OOP). In addition, C++ also contains many improvements and features that make it a "better C", independent of object oriented programming. C++ is actually an extendable language since we can define new types in such a way that they act just like the predefined types which are part of the standard language.

If you just use C++ as a better C, you will not be using all of its power. Like any quality tool, C++ must be used the way it was designed to be used to exploit its richness. Some of the new features include encapsulation, inline function calls, overloading operators, inheritance and polymorphism. I am not going to explain what they mean here as that would simply take me away from my purpose here, but you can refer to any good C++ book or the C++ FAQ for more information.

Name
The name C++, if written the language C, will add 1 to the variable C. So C++ logically means C+1, or more simply C2. That is because C++ was built with the intention of being a superset of C.

Compilers
A compiler reads the entire program and converts it into object code, which is a translation of the program source code into a form that the computer can execute directly.

Unix/Linux

 * GCC
 * g++

Windows

 * MinGW
 * Microsoft Visual Studio

OpenVMS (VAX & AXP)

 * GCC
 * Dec C/C++

Macintosh (Apple/PowerMac)

 * MPW
 * Symantec C++
 * CodeWarrior
 * Harvest C
 * Sesame C