字符串化操作符#,粘接附##,字符化操作符@#
来源:互联网 发布:淘宝里卖家正在被处罚 编辑:程序博客网 时间:2024/06/13 17:09
1. 字符串化操作符#
#include <stdlib.h>#include <stdio.h>#define warn_if(x)\do{\if(x)\printf("warn "#x"\n");\}while(0);int main(){int eric = 3;warn_if (eric == 3);warn_if (eric == 2);return 0;}
2. 连接字符串
#define lian(x,y) x##y
int lian(xx,yy) = 1;
cout<<xxyy<<endl;
output 1
用法1
#define DESC_LEN 5
struct ModuleDesc
{
ModuleNo no;
char desc[DESC_LEN+1];
};
#define MODSTRING(mod) {mod,##mod}
struct ModuleDesc desc[]=
{
MODSTRING(PR000),
MODSTRING(SY000)
};
用法2
当为空时消除前面的逗号
例如
#define myprint(str,...) fprintf(stderr,str,__VA_ARGS__)
如果一下调用时
myprint("eric"); 编译会失败.
这时定义宏如下
#define myprint(str,...) fprintf(stderr.str,##__VA_ARGS__)可以解决此问题
同理,可变参有名称时定义如下:
#deifine myprint(str, args...) fprintf(stderr,str,##args)
3. 字符化操作符
#define ToChar(x) #@x
在g++中不能编译通过,应该是不支持。
0 0
- # ## @#(字符串化操作符,粘接附,字符化操作符)
- 字符串化操作符#,粘接附##,字符化操作符@#
- 字符和字符串操作
- Linux C 中字符串化操作符#
- php 字符串操作 字符 php
- 字符及字符串操作函数
- Standard_C_字符和字符串操作
- c字符和字符串操作
- 字符/字符串操作函数(C)
- 字符及字符串操作函数
- 字符串连接操作符“+”
- 字符串重复操作符
- 字符串操作符 +
- 字符串操作符
- 字符串格式化 (%操作符)
- 字符串格式化 (%操作符)
- perl字符串操作符
- 【操作符】 - 字符串操作符 和 类型转换操作符
- cg
- 代码就是把当前节点内所有进程遍历一遍,把进程状态写入到文本里面
- checkStyle配置说明、范例和结果分析
- bash: wget: command not found的解决办法
- 无限层级且乱序的树形结构数据的整理,利用HashMap减少遍历次数
- 字符串化操作符#,粘接附##,字符化操作符@#
- 【转】 LSD(Line Segment Detector) 直线段检测算法学习~
- FTP方式实现上传下载功能
- 抽象一个形状类
- 2014-6-9
- 转点东西
- 来个CSDN的处女作
- 又怎比得上日日朝夕相处的心情
- CSS浮动