F.8. Predefined Symbolic Constants
There are six predefined symbolic constants (Fig. F.1). The identifiers for each of these begin and (and, except for __cplusplus, end) with two underscores. These identifiers and the defined preprocessor operator (Section F.5) cannot be used in #define or #undef directives.
Symbolic constant |
Description |
---|---|
__LINE__ |
The line number of the current source code line (an integer constant). |
__FILE__ |
The presumed name of the source file (a string). |
__DATE__ |
The date the source file is compiled (a string of the form "Mmm dd yyyy" such as "Aug 19 2002"). |
__STDC__ |
Indicates whether the program conforms to the ANSI/ISO C standard. Contains value 1 if there is full conformance and is undefined otherwise. |
__TIME__ |
The time the source file is compiled (a string literal of the form "hh:mm:ss"). |
__cplusplus |
Contains the value 199711L (the date the ISO C++ standard was approved) if the file is being compiled by a C++ compiler, undefined otherwise. Allows a file to be set up to be compiled as either C or C++. |