ZHCUAQ1F july 2015 – april 2023
编译器维护并识别表 3-29 中列出的预定义宏名称。
宏名称 | 说明 |
---|---|
_BIG_ENDIAN | 如果选择了大端模式(使用了 --big_endian 选项),则已定义;否则未定义。 |
__DATE__(1) | 以mmm dd yyyy 形式扩展到编译日期 |
__FILE__(1) | 扩展到当前源文件名 |
_INLINE | 如果使用了优化(--opt_level 或 -O 选项),则扩展为 1;否则未定义。 |
__LINE__(1) | 扩展到当前行号 |
_LITTLE_ENDIAN | 如果选择了小端模式(未使用 --big_endian 选项),则已定义;否则未定义。 |
__PTRDIFF_T_TYPE__ | 定义为 ptrdiff_t 类型 |
__SIZE_T_TYPE__ | 定义为 size_t 类型 |
__STDC__(1) | 定义为 1 以表示编译器符合 ISO C 标准。有关ISO C标准的例外情况,请参阅节 7.1。 |
__STDC_VERSION__ | C 标准宏。 |
__STDC_HOSTED__ | C 标准宏。始终定义为 1。 |
__STDC_NO_THREADS__ | C 标准宏。始终定义为 1。 |
__TI_32BIT_LONG__ | 如果“long”类型为 32 位宽,则定义为 1;否则未定义。 |
__TI_40BIT_LONG__ | 如果未定义 __TI_32BIT_LONG__,则定义为 1;否则未定义。 |
__TI_C99_COMPLEX_ENABLED__ | 如果启用了复杂数据类型,则定义为 1。尽管数学运算仅在包含 complex.h 时才可用,但情况总是如此。 |
__TI_COMPILER_VERSION__ | 已定义为 7-9 位整数,具体取决于 X 是 1、2 还是 3 位。该数字不包含小数。例如,版本 3.2.1 表示为 3002001。去掉前导零以防止数字被解释为八进制。 |
__TI_EABI__ | 始终定义为 1。 |
__TI_GNU_ATTRIBUTE_SUPPORT__ | 如果启用了 GCC 扩展(这是默认设置),则定义为 1 |
__TI_STRICT_ANSI_MODE__ | 如果启用了严格的ANSI/ISO 模式(使用了 --strict_ansi 选项),则定义为 1;否则定义为 0。 |
__TI_STRICT_FP_MODE__ | 如果使用了 --fp_mode=strict(默认设置),则定义为 1;否则定义为 0。 |
__TI_WCHAR_T_BITS__ | 定义为 wchar_t 类型。 |
__TIME__(1) | 以“hh:mm:ss”形式扩展到编译时间 |
_TMS320C6X | 始终已定义 |
_TMS320C6400_PLUS | 如果目标是 C6400+、C6740 或 C6600,则已定义 |
_TMS320C6740 | 如果目标是 C6740 或 C6600,则已定义 |
_TMS320C6600 | 如果目标是 C6600,则已定义 |
__TMS320C6X__ | 始终定义为 _TMS320C6x 的备用名称 |
__WCHAR_T_TYPE__ | 定义为 wchar_t 类型。 |
可以按照与任何其他已定义名称相同的方式使用表 3-29 中列出的名称。例如,
printf ( "%s %s" , __TIME__ , __DATE__);
转换为类似如下行:
printf ("%s %s" , "13:58:17", "Jan 14 1997");