Micro:
1. #与##区别理解:
#define A(x) T_##x
#define B(x) #@x
#define C(x) #x
我们假设:x=1,则有:
A(1)展开后为:T_1
B(1)展开后为:'1'
C(1)展开后为:"1"
2. 预定义宏会被展开
3. 宏调用自身,不会被展开,只当作一般符号
4. 预扫描是每扫描一次展开一层
Micro:
1. #与##区别理解:
#define A(x) T_##x
#define B(x) #@x
#define C(x) #x
我们假设:x=1,则有:
A(1)展开后为:T_1
B(1)展开后为:'1'
C(1)展开后为:"1"
2. 预定义宏会被展开
3. 宏调用自身,不会被展开,只当作一般符号
4. 预扫描是每扫描一次展开一层