下面程序的运行结果是 #include"iostream.h" #define sum(a,b)a*b void main() { int x; X=sam(1+2,3); cout<<x; }

admin2010-03-29  24

问题 下面程序的运行结果是    #include"iostream.h"    #define sum(a,b)a*b    void main()    { int x;      X=sam(1+2,3);      cout<<x;    }

选项 A、0
B、9
C、7
D、5

答案4

解析 理解宏定义.sum(a,b)a*b中a为1 +2.b为3,故sum(1+2,3)=1+2*3,即宏定义的替换过程是原样替换。注意:选项B)的计算方法是(1+2)*3 =9是错误的,注意,不要随意的加括号。
注意:宏定义与函数的区别。
转载请注明原文地址:https://kaotiyun.com/show/Bnjp777K
0

最新回复(0)