2.2.3 嵌套宏替换

所谓嵌套宏替换,就是指在一个宏的定义中使用另外一个宏。关于嵌套宏替换的具体使用,可以看看下面的宏定义:


define N 3

define N_CUBE NNN

define CUBE_ABS((N_CUBE>0)?(N_CUBE):-1*(N_CUBE))


嵌套宏替换在预处理阶段进行扩展的时候是逐层进行的,以上面的CUBE_ABS为例,在预处理阶段将对其中的每个宏名进行扩展,直到宏定义中没有宏名为止。