空宏定义的测试代码#include <stdio.h> #define D(x) int main() { D(printf("null macro")); return 0; } 当宏定义只有一个参数的时候就属于空宏定义,使用该宏时和代码注释的效果相同起到相同效果的宏定义如下所示#define D(x) do{}while(0)