C中#define可以有 #, ## #@
在#define 定义时, 斜杠("\")是用来续行的。
- "#"用来把参数转换成字符串,是给参数加上双引号。
- "##"则用来连接前后两个参数,把它们变成一个字符串,不添加任何符号。
- "#@"是给参数加上单引号。
- #define BY(x,y) x##y // BY(a,b) => ab
- #define BY(a) #@a // BY(a) => 'a'
- #define BY(x) #x //BY(1) => "ab"