如果计算两个数的平方,使用强类型定义,我们可能需要一下定义
int Fun(int x,int x){
return x * x;
}
float fun(fload x,fload x){
return x * x;
}
需要定义多个函数
宏定义似乎可以解决
#define FUN(x) (x * x)
但是经过一下调用,出问题了
main(){
int i=1;
printf("%d\n",FUN(i++);
printf("%d\n",FUN(i++);
return 0;
}
输出什么?
可能有人会说 1,4
但实际上输出的是 1,9