define
#define fun(x) (x*x)int main() {int i = 2;int j = fun(i++);cout<<"i:"<<i<<" j:"<<j<<endl;int n = fun(++i);cout<<"i: "<<i<<" n:"<<n;}
i:4 j:4
i: 6 n:36
對于fun(i++)
就可以看成是(i++)*)(i++)
先是兩個i相乘得到結果,然后,i自加兩次
對于fun(++i)
(++i)*(++i)
先是i自加兩次,變成6,然后6*6 = 36
總結
- 上一篇: 杨氏矩阵以及扩展
- 下一篇: java垃圾回收之循环引用