12月12号
#define PRINT(Y) printf("Y=%d\n",Y);
好像不会改变 Y, PRINT(t) 也是 Y=...
以下正确的叙述是( )。
A.宏替换不占用运行时间,只占用编译时间
B.在程序的一行中可以出现多个有效的预处理命令行
C.使用带参数宏定义时,参数的类型应与宏定义时一致
D.宏定义不能出现在函数内部
关于带参数的函数与带参数的宏定义说法错误的是()。
A.函数和宏定义都提高了程序可读性,方便集中修改
B.将重复代码重构为函数或宏定义,可以减少代码体积
C.函数对参数类型进行语法检查,宏定义不检查参数类型
D.函数调用存在开销,宏定义没有函数调用的开销
E.函数支持单步调试和断点,宏定义不支持单步调试和断点
B,宏定义可能让代码膨胀
printf("%2d", n%3);
注意 %2d会补选空格。
#define T(a, b) ((a) != (b)) ? ((a) > (b) ? 1 : -1) : 0
printf("%d,%d,%d\n", T(4, 5), T(10, 10), T(5, 4));
是-1,0,1哦

浙公网安备 33010602011771号