Tool之预定义的宏

a 夏天 提交于 2020-10-29 01:30:00

欢迎关注公众号 VxWorks567

如转发,请标明出处!

 

编译器都会预定义一些宏,这些宏是不可取消的,来看看VxWorks中可能用到的这几个

 

  • __FILE__ 字符串常量,表示当前文件名,包含绝对路径

  • __LINE__ 十进制整型数,表示当前代码行号的

  • __FUNCTION__ 字符串常量,表示当前函数名,但它不是宏

这三个是在调试语句里经常用的,至少是公众号VxWorks567经常用

  • __DATE__ 字符串常量,表示预处理时的日期,包含11个字符

  • __TIME__ 字符串常量,表示预处理时的时间,包含8个字符

  • __INCLUDE_LEVEL__ 十进制整数,表示当前位置被#include的深度,从0开始

  • __SCHAR_MAX__ signed char的最大值

  • __WCHAR_MAX__ wchar_t的最大值

  • __SHRT_MAX__ signed short的最大值

  • __INT_MAX__ signed int的最大值

  • __LONG_MAX__ signed long的最大值

  • __LONG_LONG_MAX__ signed long long的最大值

  • __INTMAX_MAX__ intmax_t的最大值

不建议直接使用这几个宏,而是包含系统的头文件

  • __SIZEOF_INT__

  • __SIZEOF_LONG__

  • __SIZEOF_LONG_LONG__

  • __SIZEOF_SHORT__

  • __SIZEOF_POINTER__

  • __SIZEOF_FLOAT__

  • __SIZEOF_DOUBLE__

  • __SIZEOF_LONG_DOUBLE__

  • __SIZEOF_SIZE_T__

  • __SIZEOF_WCHAR_T__

  • __SIZEOF_WINT_T__

  • __SIZEOF_PTRDIFF_T__

C标准数据类型所占字节数

  • __TIMESTAMP__ 字符串常量,表示当前文件的最后修改时间,包含星期、月、日、时、分、秒、年,共24个字符

有点意思吧

 

这正是:

系统几个宏,调试挺好用。

溶于代码中,功能妙无穷。

 

我是泰山,专注VX 15年!

欢迎关注VxWorks567,

一起学习,共同进步!


本文分享自微信公众号 - 这里只有VxWorks(VxWorks567)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!