Pre-defined Macros (Windows Embedded CE 6.0)
1/5/2010
The device compilers recognize seven predefined ANSI C macros and the Microsoft C++ implementation provides several more.
These macros take no arguments and cannot be redefined. Their value, except for __LINE__ and __FILE__, must be constant throughout compilation.
The following table provides additional information about predefined macros, some of which are defined with multiple values.
Macro | Description |
---|---|
__DATE__ |
The compilation date of the current source file. The date is a string literal of the form Mmm dd yyyy. |
__FILE__ |
The name of the current source file. __FILE__ expands to a string surrounded by double quotation marks. |
__FUNCTION__ |
Valid only within a function and returns the undecorated name of the enclosing function (as a string). __FUNCTION__ is not expanded if you use /EP (Preprocess to stdout Without #line Directives) or /P (Preprocess to a File) compiler options. |
__LINE__ |
The line number in the current source file. The line number is a decimal integer constant. It can be altered with a #line directive. |
__STDC__ |
Indicates full conformance with the ANSI C standard. Defined as the integer constant 1 only if the /Za (Disable Language Extensions) compiler option is given and you are not compiling C++ code; otherwise is undefined. |
__TIME__ |
The most recent compilation time of the current source file. The time is a string literal of the form hh:mm:ss. |
__TIMESTAMP__ |
The date and time of the last modification of the current source file, expressed as a string literal in the form Ddd Mmm Date hh:mm:ss yyyy, where Ddd is the abbreviated day of the week and Date is an integer from 1 to 31. |
Microsoft-specific Macros
The following table shows additional predefined macros that are Microsoft-specific.
_CHAR_UNSIGNED
Default char type is unsigned.Defined when /J (Default char Type Is unsigned) is specified.
- __cplusplus
Defined for C++ programs only.
- _CPPRTTI
Defined for code compiled with /GR (Enable Run-Time Type Information).
- _CPPUNWIND
Defined for code compiled with /EHsc (Enable Exception Handling).
_MFC_VER
Defines the MFC version.Defined as 0x0600 for Microsoft Foundation Class Library 6.0 or later.
Always defined.
_MSC_EXTENSIONS
This macro is defined when compiling with the /Ze (Disable Language Extensions) compiler option (the default).Its value, when defined, is 1.
_MSC_VER
Defines the compiler version.Defined as 1200 or greater for Microsoft Visual C++ 6.0 or later.
Always defined.
_WIN32
Defined for applications for Win32.Always defined.