C ++ is a successor to C and was developed by Bjarne Stroustrup in AT & T-Labs. C ++ is down-compliant to C, which means that C programs can also be compiled with a C ++ compiler.
Theory and practice can be diverted here.
The programming language C has been standardized several times (see variants of the programming language C at Wikipedia), of which C ++ is based on the 1990 standard (C90, ISO / IEC 9899: 1990). C was expanded afterward. The following C standards (C95, C99) play a subordinate role in practice, but these extensions could not be considered in C ++.
On the other hand, extensions that brought C ++ (!) Found their way into C standards. Thus C ++ language elements were integrated into C.
In addition to the different standards, non-standard implementations of the C ++ compiler can also create problems.
However, what is complicated here is less dramatic in practice. I just want to point out that there is not always a 100% downward compatibility.
What to start with? C or C ++?
Basically: Both are possible. Beginning with C ++ is certainly more complex and time-consuming (time and patience problem) - because of the larger number of language elements.
We suggest you start with C
As mentioned above, C ++ is the "larger brother" of C, backward compatible with it (except for minor exceptions). All C language elements are also available under C ++. They are learning new things when switching to C ++, and C ++ offers better solutions (object-oriented programming). Conversely, if you first need to learn C ++, and then later you have to write a pure C program (which has to run on a "pure-breed" C compiler), you first have to learn what was not yet available in C.
If you primarily intend to program hardware or microcontrollers, also speaks more for pure C. C compilers, there are more platforms than C ++ compilers. For every exotic processor, there is usually a C compiler. And if not, then often remains more assembler.
If you are completely new to the programming (beginners), speak also a lot of a language with fewer language elements, in order to keep the learner motivated. Otherwise, the overview of the whole is often lost. Another point for C.
No comments:
Post a Comment