我还是不怎么懂++i和i++。55555
我还是不怎么懂,例如int i=1 ,那么i++是2?如果显示输出printf(''i=%d",i++);等于多少?
2015-01-10
i++ 是先返回 i 的值,再 i = i + 1;
++i 是先 i = i + 1;再把 i 值返回。
以示例代码为例:
int x = 0; // x 值为 0 // 调用printf时,printf想要知道第二个参数的值,这第二个参数就是“++x” // 那么会先把x的值加上1(x为1),再把x的值(就是1)返回给printf用 printf("x=%d\n",++x); // 这一句printf同样想知道它的第二个参数的值,就是“x++” // 那么会先把x的值返回给printf用(值还是1),再把x的值加上1(这时i为2) printf("x=%d\n",x++); // 也就是说如果再次取x的值的话,就会得到2 printf("x=%d\n", x); // 这一句会输出2
举报