C++ is an object-oriented programming language that is a superset of C and was created by Bjarne Stroustrup at Bell Labs in the early 1980s. C++ supports features like classes, inheritance, and object-oriented design while also being compatible with C. Some key characteristics of C++ include its support for object-oriented programming, portability, modular programming, and C compatibility. C++ programs are made up of tokens like identifiers, keywords, literals, punctuators, and operators.