C语言-预定义宏
本文最后更新于:1 年前
标准C语言预定义宏
标准C语言预处理要求定义某些对象宏,每个预定义宏的名称为两个下划线字符开头和结尾,这些预定义宏不能被取消定义(#undef)或由编程人员重新定义。
- LINE :当前程序行的行号,表示为十进制整型常量
- FILE :当前源文件名,表示字符串型常量
- DATE :转换的日历日期,表示为Mmm dd yyyy 形式的字符串常量,Mmm是由asctime产生的。
- TIME :转换的时间,表示”hh:mm:ss”形式的字符串型常量,是有asctime产生的。(asctime貌似是指的一个函数)
- STDC :编辑器为ISO兼容实现时位十进制整型常量
- STDC_VERSION :如何实现复合C89整部1,则这个宏的值为19940SL;如果实现符合C99,则这个宏的值为199901L;否则数值是未定义
- STDC_EOBTED :(C99)实现为宿主实现时为1,实现为独立实现为0
- STDC_IEC_559 :(C99)浮点数实现复合IBC 60559标准时定义为1,否者数值是未定义
- __STDC_IEC_559_COMPLEX__: (C99)复数运算实现复合IBC 60559标准时定义为1,否者数值是未定义
- STDC_ISO_10646 :(C99)定义为长整型常量,yyyymmL表示wchar_t值复合ISO 10646标准及其指定年月的修订补充,否则数值未定义
C++中还定义了 __cplusplus
C语言中的__FILE__、__LINE__和__DATE__等都在头文件#include<stdio.h>中
打印函数示例
1 |
|
自定义的宕机函数中可使用到
1 |
|