Preprocessor Names


Certain names (macros) are defined by the compiler itself. Standard names are described below.


__LINE__ The decimal representation of the current line being preprocessed. An application may update the value returned by this macro via the #line directive.
__FILE__ A string literal containing the name of the file currently being preprocessed. An application may update the value returned by this macro via the #line directive.
__DATE__ A string literal containing the current date (i.e. the date of compilation). Month, day, year format is used.
__TIME__ A string literal containing the current time (i.e. the time of compilation). The format is "hh:mm:ss".
__cpluscplus This macro is defined if the compilation is a C++ compilation.


Only the line number and file name may be changed, and only then through the #line directive.