Developer Guide and Reference


ISO Standard Predefined Macros

The ISO/ANSI standard for the C language requires that certain predefined macros be supplied with conforming compilers.
The compiler includes predefined macros in addition to those required by the standard. The default predefined macros differ among Windows*, Linux*
, and
operating systems
due to the default
compiler option on Windows*
. Differences also exist on Linux*
as a result of the
compiler option.
The following table lists the macros that the Intel® C++ Compiler supplies in accordance with this standard:
The date of compilation as an 11-character string literal in the form
mm dd yyyy
. If the day is less than 10 characters, a space is added before the day value.
A string literal representing the name of the file being compiled.
The current line number as a decimal constant.
Defined when compiling a C translation unit with the
compiler option. (Windows*)
Defined and value is
only when compiling a C translation unit with
Defined and value is
only when compiling a C translation unit with
Defined when compiling with option
. (Windows*, Linux*)
Define this macro and include the respective header files to get the functions, macros, and types that comprise support for decimal floating-point functionality.
The time of compilation as a string literal in the form

Product and Performance Information


Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804