C/C++中取消宏定义
来源:互联网 发布:如何用阿里云搭建网站 编辑:程序博客网 时间:2024/06/07 09:09
C/C++中可以用 #undef xxx 来取消宏xxx的定义。举例如下
#undef命令可以取消定义一个名称为宏:
#undef name
这个命令使预处理器忘记name的所有宏定义。取消一个当前未定义宏的定义并不是错误。当一个名称被取消定义之后,就可以向它提供一个全新的定义(使用#define),而不会产生任何错误。在#undef命令内部,并不会执行宏替换。
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
// xxx is defined
bool b = true;
#define xxx
#ifdef xxx
cout << "xxx is defined #1" << endl; // this line is printed
#endif
// undefine xxx
#ifdef xxx
#undef xxx
b = true;
#endif
#ifdef xxx
cout << "xxx is defined #2" << endl; // not printed
#endif
// define xxx again
if(b)
{
#define xxx
}
#ifdef xxx
cout << "xxx is defined #3" << endl; // printed
#endif
return 0;
}
结果输出:
xxx is defined #1
xxx is defined #3
0 0
- C/C++中取消宏定义
- C/C++中取消宏定义
- C/C++中取消宏定义
- c中宏定义
- C中常用宏定义
- C 中常用宏定义
- [c/c++]宏定义,#,##
- [c/c++]宏定义,#,##
- [c/c++]宏定义,#,##
- C语言宏定义中#用法
- C语言中常用的宏定义
- c中有用的几个宏定义
- c中宏定义的特殊符号
- C/C++中 宏定义字符串 操作
- C/C++中 宏定义字符串 操作
- C语言宏定义中#用法
- c语言中宏的定义
- c中宏定义的特殊符号
- iOS 7系列译文:认识 TextKit
- SolrCloud简介
- Ubuntu #1040 无法登录 MySQL 服务器
- 新建单据,放大镜过滤的添加。
- (013):LINQ查询语法与方法语法
- C/C++中取消宏定义
- 控制台启动WCF服务的配置
- Windows系统下搭建MPI环境
- libprotobuf ERROR google/protobuf/wire_format.cc:1059
- php-5.4.22 编译
- 经典开源项目介绍(游戏、游戏引擎、通用组件)
- Android设置多个定时器时只有最后一个定时器有效的问题
- java-乱七八糟
- OpenLDAP Master/Slave部署