请各位C语言的高手帮忙啊!
人气:
【字体:大 中 小】
发布时间:2008-11-04 13:10:25
>>>>>>>>提问#define F(X,Y) (X)(Y)
main()
{int a=3,b=4;
print("%d\n",F(a++,b++));
{
这个是选择题,请问答案为什么不是20而是12呢?a和b的值是多少?
休 闲 居 编 辑
>>>>>>>>休闲养生网回答:首先,宏定义那儿应该是 ((X)*(Y)) 吧?
F(a++,b++)先被替换为(a++)*(b++),然后把a=3,b=4代入。
++运算是在进行乘法运算后在进行,故结果为3*4=12.然后a++变为4,b++变为5.
≡ 查看、发表评论 ≡