holmes4:
sprintf atoi, print, getc (from stdio) sin(), random() and anything that requires you to include a ".h" file (in plain c/c++) are NOT part of the language .They are lib's supplied with language, they may be defined in the standards but they are still just add ons .
If you look at the language the syntax does not say ant thing about them.
Mark
Wrong. The C standard defines two levels, hosted and freestanding. The freestanding environment does not include a library, but the hosted level does include a full library definition. I was on the original C standards body (X3J11) from its inception through the first C standard (the 1989 ANSI standard for the US, and the 1990 ISO standard for the whole world). The C99 standard defines some 250 pages of text describing the libraries.
I believe the C++ standard is similar, in that it provides a full library. Now in environments like the Arduino, you get a subset of the full library, but the standard does specify the library.