有以下程序 #include #define SUB( X, Y ) (X+1)*Y main() { int a=3, b=4; printf("%d\n",SUB(a++ ,b++ )); } 程序运行后的输出结果是( )。

admin2019-12-17  21

问题 有以下程序
#include
#define SUB( X, Y ) (X+1)*Y
main()
{ int a=3, b=4;
printf("%d\n",SUB(a++ ,b++ ));
}
程序运行后的输出结果是( )。

选项 A、16
B、20
C、12
D、25

答案A

解析 宏定义只是使用宏名代替一个字符串,是一种机械的置换,所以输出的SUB(a++,b++)=(a+++1)*b++,计算结果为16,答案选A。
转载请注明原文地址:https://jikaoti.com/ti/OyG0FFFM
0

最新回复(0)