首页 > 试题广场 >

下列函数的输出结果为 ______.

[问答题]

下列函数的输出结果为 ______.

#define add(a+b) a+b
int main(){
    printf(“%d”,5*add(3+4));
    return 0;
}

宏直接替换,所以是5*3+4=19
发表于 2017-07-11 07:37:34 回复(1)
在VS2012编译了,题目是错的,应该写成
#define add(a,b) a+b
int main()
{
printf("%d",5*add(3,4));
return 0;
}
结果为19
发表于 2017-07-13 17:07:25 回复(0)
宏替换时,只对参数进行了替换,不牵扯符号,所以5*3+4=19
发表于 2017-07-29 09:49:31 回复(0)
宏是简单的字符替换,所以结果应该是5*3+4=19
发表于 2017-07-14 17:58:30 回复(0)
19
发表于 2017-07-13 11:28:40 回复(0)
35
这里add(a+b) 并不是方法,add(a+b)只是一个符号吧,所以结果是35
发表于 2017-07-12 00:23:51 回复(0)