1

我这里有这段代码

#include<stdio.h>
void main()
{
    int i=0;
    printf("%d %d\n",++i,i++);
}

哪个输出

10z [achilles:~/Arena/c] $ ./a.out 
2 0

和等效的java程序

12z [achilles:~/Arena/java] $ cat a.java 
class a
{
    public static void main(String[] args)
    {
        int i=0;
        System.out.printf("%d %d\n",++i,i++);
    }
}

这给了我

12z [achilles:~/Arena/java] $ java a
1 1

为什么他们都打印不同的结果???他们不是都应该给我“1 1”吗

4

0 回答 0