读书人

关于#define的有关问题

发布时间: 2012-02-23 22:01:35 作者: rapoo

关于#define的问题
#define f(x) x*x*x

int main()

{
int a;
int b=2;
f(++b);

}

为什么f(++b)的结果是80

而不是60

在把f(x)定义为x*x结果是16

也就是说是4*4
而不是3*4

即使变成#define f(x) (x)*(x)*(x)
还是80
也就是说4*4*5
请高手说明一下


[解决办法]
无聊的问题,你走入死胡同了,不要研究这种问题。
[解决办法]
没意思的,不要研究这种东西
[解决办法]
哦!那是不是和编译器有关啊!

------------------------------

可以这么说。放弃吧,兄弟。:)

读书人网 >C++

热点推荐