C++;操作员优先级:GCC 5.2 vs Visual Studio 2015 让我们使用简单的C++代码,如: int main(){ int a = 0; while(a<3) { a=a++; std::cout<<a<<std::endl; } } intmain(){ int a=0; 而(a

C++;操作员优先级:GCC 5.2 vs Visual Studio 2015 让我们使用简单的C++代码,如: int main(){ int a = 0; while(a<3) { a=a++; std::cout<<a<<std::endl; } } intmain(){ int a=0; 而(a,c++,gcc,operators,visual-studio-2015,C++,Gcc,Operators,Visual Studio 2015,您的pogram是无效的(未定义的行为),因此编译器可以生成任何东西 问题在于在一个语句中不止一次地分配给单个变量(与序列点有关) 因此,应: a++; a++;

您的pogram是无效的(未定义的行为),因此编译器可以生成任何东西

问题在于在一个语句中不止一次地分配给单个变量(与序列点有关)

因此,应:

 a++;
 a++;