`
kmplayer
  • 浏览: 497306 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于宏定义,常见宏及其对应的头文件

阅读更多
(1)#ifndef和 #define组合
一般用于头文件中,防止该头文件被重复引用.
其用法一般为:
#ifndef <标识>
  #define <标识>
  .........   // include or define sth.
#else
  ......
#endif
<标识>在理论上来说可以是自由命名的,但每个头文件的这个“标识”都应该是唯一的。
标识的命名规则一般是头文件名全大写,前后加下划线,并把文件名中的“.”也变成下划线,如:stdio.h对应的就是:
#ifndef _STDIO_H_
#define _STDIO_H_
.........   // include or define sth.
#endif

(2)
#if 0
中间可以随见加入各种文字
#endif

(3)
__FILE__:文件名常量:
__DATE__:日期常量
__TIME__:时间常量
__LINE__:所在行常量
EOF:错误常量
CLOCKS_PER_SEC:cpu在一秒内的计时单元数
<cstdlib> EXIT_SUCESS(总是定义W为0),XIT_FAILURE
<cstddef> size_t
<cassert> assert()宏
<memory> auto_ptr类模版

判断一段程序是由C 编译还是由C++编译:
    #ifdef __cplusplus
        cout<<"c++"<<endl;
    #else
        cout<<"c"<<endl;
    #endif


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics