这经常用于包含头文件.
要调用该宏, 只需在代码中指定宏名称, 该宏将被替代为它被定义的内容.
函数宏
带参数的宏也被称为"函数宏"....但在调用函数宏时, name与(之间可以有空格.
e.g.
#define mul(x,y) ((x)*(y))
注意, 函数宏之后的参数要用括号括起来, 看看这个例子:
e.g....调用这样的函数宏时, 传递给它的参数个数要不少于参数列表中参数的个数(多余的参数被丢弃)....#if 0
{
一大段代码;
}
#endif
常量表达式可以是包含宏, 算术运算, 逻辑运算等等的合法C常量表达式, 如果常量表达式为一个未定义的宏, 那么它的值被视为0....我用gcc, 如果不指定-std=c99, 其他情况都给出__STDC_VERSION__未定义的错误信息, 咋回事呢?