C/C++ 宏中#和##
来源:互联网 发布:网络有好有坏的英文 编辑:程序博客网 时间:2024/06/07 19:04
C/C++ 宏中#和##
1、宏中的#
C/C++宏中#将宏参数 字符串化。例如:
#define TOSTR(s) #schar* str = TOSTR(hello world); // str = "hello world"std::cout<<str <<'\n';output : hello world
2、宏中的##
##对文本连接。例如:
#define TEST(m, n) m##n#define S_CONN(m, n) m##.##nint dData = TEST(3,4); //34double fData = S_CONN(3,4); //3.4std::cout<<"dData:" <<dData <<", fData:"<<fData <<'\n';output : dData:34, fData:3.4
3、宏参数本身为宏
宏中有#和##时,若参数是宏,该参数宏不会展开。若要展开,需要加一个中间宏进行转换。例如:
#define _TOSTR(s) #s#define TOSTR(s) _TOSTR(s)std::cout<< "_TOSTR(_S_CONN(8, 4)): "<< _TOSTR(_S_CONN(8, 4))<<"\n" <<"TOSTR(_S_CONN(8, 4)): "<< TOSTR(_S_CONN(8, 4))<<'\n';output : _TOSTR(_S_CONN(8, 4)) : _S_CONN(8, 4) TOSTR(_S_CONN(8, 4)) : 8.4
0 0
- [c、c++]宏中"#"和"##"的用法
- [c、c++]宏中"#"和"##"的用法
- C语言中#和##宏
- C,C++宏中#和##
- C/C++ 宏中#和##
- C/C++中##和#宏
- [c]c中c串和字符串
- C语言中#和##
- c中*和&
- C语言中#,##和#@
- C语言中* 和 &
- C语言中*和&
- C语言中 || 和 &&
- [c、c++]宏中"#"和"##"的用法(zz)
- [c、c++]宏中"#"和"##"的用法(zz)
- [c、c++]宏中"#"和"##"的用法(zz)
- [c、c++]宏中"#"和"##"的用法(zz)
- [c、c++]宏中"#"和"##"的用法(zz)
- Tiny快速入门之控制层开发
- 搭建Hibernate4开发环境并整合Spring3
- HDU2196——Computer(树形DP,经典)
- 关于管理的点滴总结--人的价值取决于其具备的资源
- Floating Action Button(漂浮按钮)--谷歌新的设计包
- C/C++ 宏中#和##
- IntelliJ idea14输出中文乱码问题
- iOS 正则表达式
- onSaveInstanceState和OnRestoreInstanceState
- 三大框架综合测试
- Java反射机制
- POJ1797 -- Dijkstra算法
- TinyDBRouter
- 万年历(java实现)