我有下面的代碼,我希望輸出爲:充分認識前綴增量(++)操作
foo(0) -- 2 /* 1*2 */
foo(2) -- 12 /* 3*4 */
foo(4) -- 30 /* 5*6 */
但我有
foo(2) -- 4
foo(4) -- 16
foo(6) -- 36
代替。有人可以向我解釋發生了什麼事嗎?
include <stdio.h>
int main()
{
int counter; /* counter for loop */
counter = 0;
while (counter < 5)
printf("foo(%d) -- %d\n", counter, ((++counter)*(++counter)));
return (0);
}
+1對於過於迂腐的編譯器。 – Thomas 2013-06-14 07:47:17