在C++中, int a=2; int b=(a++)+a*3; int c=a*3+(a++); 结果是b=8,c=8。 而在C#中, int a = 2; int b = (a++) + a * 3; int c = a * 3 + (a++); 结果是b=11, c=8; 同样的代码,结果不一样,看来编译器不同了。不是左右顺序不同,因为加号两边只是换了个位置。应该是,C++中的a++,a直到遇到“;”才执行++。