C中的空宏定义,即只有一个参数

空宏定义的测试代码

#include <stdio.h>
#define D(x)
int main()
{
    D(printf("null macro"));
    return 0;
}

当宏定义只有一个参数的时候就属于空宏定义,
使用该宏时和代码注释的效果相同

起到相同效果的宏定义如下所示

#define D(x) do{}while(0)
原文地址:https://www.cnblogs.com/starrytales/p/5643387.html