Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 7/13/2023
Public
Document Table of Contents

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 macOS operating systems due to the default /Za compiler option on Windows. Differences also exist on Linux and macOS as a result of the -std compiler option.

The following table lists the macros that the Intel® C++ Compiler Classic supplies in accordance with this standard:

Macro

Value

__DATE__

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.

__FILE__

A string literal representing the name of the file being compiled.

__LINE__

The current line number as a decimal constant.

__STDC__

Defined when compiling a C translation unit with the Za compiler option. (Windows)

__STDC_HOSTED__

Defined and value is 1 only when compiling a C translation unit with /Qstd=c99.

__STDC_VERSION__

Defined and value is 199901L only when compiling a C translation unit with /Qstd=c99.

__STDC_WANT_DEC_FP__

Defined when compiling with option D. (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.

__TIME__

The time of compilation as a string literal in the form hh:mm:ss.