鱼C论坛's Archiver
论坛
›
C\C++交流
› C语言的问题
yuyou517
发表于 2017-2-14 22:32:46
C语言的问题
#include<stdio.h>
#define a(x) x*2
void main()
{
int n,m;
n = 5;
m = 1;
printf("a(x)=%d\n",a(n+m));
return 0;
}
结果为什么是7
pl_014
发表于 2017-2-15 21:27:22
a(n+m)会被展开成n+m*2,所以在写宏函数的时候要注意加上括号
#define a(x) ((x)*2)
还有一个void main不符合C/C++的新标准,现在main函数的返回值只能是int
页:
[1]
查看完整版本:
C语言的问题