Both C and C++ allow for many little mistakes, not many directly obvious. These mistakes can be of two types: syntactic and semantic errors. This section will describe these both types of errors. First, errors that are common to both C and C++ and next, errors that are C++-only errors.