打印

使用一些宏跟踪调试

[复制链接]
373|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

A N S I标准说明了五个预定义的宏名,其分别是:

1_ L I N E _
2_ F I L E _
3_ D A T E _
4_ T I M E _
5_ S T D C _


如果编译不是标准的,则可能仅支持以上宏名中的几个,或根本不支持。记住编译程序也许还提供其它预定义的宏名。
_ L I N E _及_ F I L E _宏指令在有关# l i n e的部分中已讨论,这里讨论其余的宏名。
_ D AT E _宏指令含有形式为月/日/年的串,表示源文件被翻译到代码时的日期。
源代码翻译到目标代码的时间作为串包含在_ T I M E _中。串形式为时:分:秒。
如果实现是标准的,则宏_ S T D C _含有十进制常量1。如果它含有任何其它数,则实现是非标准的。
可以定义宏,例如:当定义了_DEBUG,输出数据信息和所在文件所在行。
1#ifdef _DEBUG
2#define DEBUGMSG(msg,date) printf(msg);printf(“%d%d%d”,date,_LINE_,_FILE_)
3#else
4#define DEBUGMSG(msg,date)
5#endif

使用特权

评论回复
沙发
Bowclad| | 2023-12-19 11:14 | 只看该作者
好像我的不支持line跟file啊

使用特权

评论回复
板凳
电子乐园游园ing| | 2023-12-19 11:17 | 只看该作者
Bowclad 发表于 2023-12-19 11:14
好像我的不支持line跟file啊

是不是需要打开C99才可以?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

235

主题

1826

帖子

5

粉丝