代码1:
i = 0;
while ( arr[i++] != EOF )
printf("%d", i);
输出:1 2 3 4
代码2:
i = 0;
while ( arr[i] != EOF )
{
printf("%d", i);
i++;
}
输出:0 1 2 3
在上面的代码中,arr[] = "//\n\0"
但是,我认为 i++ 应该首先分配 i 并递增,对吗?
IE,
if i = 1
j = i++
j = 1 (Not 2)
那么,代码 1 中究竟发生了什么,为什么它的行为不像代码 2?