设为首页 加入收藏

TOP

程序猿之---C语言细节31(#define和#undef宏细节、#error、#pragma message("文本信息")、宏定义注释)
2015-01-22 20:49:22 来源: 作者: 【 】 浏览:13
Tags:程序 ---C 语言 细节 #define #undef #error #pragma message " 文本 信息 定义 注释

主要内容:#define和#undef宏细节

一、#define和#undef宏细节

宏生命周期从#define开始到#undef结束

二、#error

编译程序时只要遇到#error就生成输出错误信息,同时停止编译

三、#pragma message("文本信息")

当我们在程序中定义了许多宏来控制源代码时,大家可能会忘记有没有正确 设置这些宏,可以通过下面代码判断

四、宏定义注释

不可行,见程序

# include 
  
   
#define BSC //
#define BMC /*
#define EMC */

#define _RUN

#define ewaece
#define sizeof
//下面这个编译错误,上面两个可以编译通过
//#define int ?

#if 0
#error? 编译程序时只要遇到#error就生成输出错误信息,同时停止编译
#endif

int main()
{
//?? ?BSC mmmm
//?? ?BMC daew? EMC? //注释优先于宏定义被预处理,当展开宏之前注释已经处理完毕,这是再展开宏出现//和/**/就会出错
?? ?# define r 1? //#和define之间可以空格,#define不一定要在最开头 
?? ?
?? ?/* #pragma message("消息文本")
???? * 当我们在程序中定义了许多宏来控制源代码时,大家可能会忘记有没有正确
?? ? * 设置这些宏,可以通过下面代码判断 
?? ? */
?? ?#ifdef _RUN
?? ?#pragma message("_RUN macro activated!")
?? ?#endif
?? ?
?? ?#define X 3
?? ?#define Y X*2
?? ?#undef X
?? ?#define X 2
?? ?
?? ?int z = Y;
?? ?
?? ?printf("z = %d\n",z); 
?? ?return 0;
} 

  
输出:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C语言标准库(2)--#include(stdio... 下一篇程序猿之---C语言细节28(const变..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: