【发布时间】:2012-03-24 23:55:12
【问题描述】:
我不明白为什么结果会是 36。有人可以向我解释一下这里发生了什么以及预处理器做了什么吗?
#include <iostream>
#define QUADRAT(x) ((x) * (x))
using namespace std;
int main()
{
double no = 4.0;
double result = QUADRAT(++no);
cout << result;
return 0;
}
非常感谢:>
【问题讨论】:
标签: c++ macros side-effects