前言:
在开发偏大型的项目中,基本上都要使用到##和#。
一,含义
a,# -> 将宏定义的变量转化为字符串
b,##-> 将其前后的两个宏定义中的两个变量无缝拼接在一起
二,使用实例
在开发偏大型的项目中,基本上都要使用到##和#。
一,含义
a,# -> 将宏定义的变量转化为字符串
b,##-> 将其前后的两个宏定义中的两个变量无缝拼接在一起
二,使用实例
1 #include<stdio.h>
2
3 #define AAA "aaa"
4 #define BBB "bbb"
5 #define AAABBB "123123"
6 #define ACCB(A,B) A##B //##将两个宏定义拼接
7 #define ACB(A,B) A#B //#将其后的第一个宏定义转换为字符串,即之战开#前的宏定义,#后面为字符串,不展开
8
9 void main()
10 {
11 printf("ACCB:%s ACB:%s\n",ACCB(AAA,BBB),ACB(AAA,iiiiiiBBB));
12 }
输出:
ACCB:123123 ACB:aaaiiiiiiBBB