C/C++基本问题整理

时间:2022-09-09 19:44:38

1,  i 初值8  

       printf("%d %d",i++,i++);

                   结果 8 8     

        printf("%d %d",++i,++i);    

                   结果 10 9

      printf运算规则:运算从右向左,输出控制符的赋值有左向右。

      i 初值8printf("%d %d",i++,i++);i++先处理表达式,后进行自增处理所以在printf处理完毕后,才进行自增处理,所以输出的都是8printf("%d %d",++i,++i);++i先进行自增处理,后进行printf处理由于printf运算从右向左,所以先处理最右边的++i,得到9,后处理前面的++i,得到10,再进行printf处理,由于输出控制符的赋值由左向右,所以10赋值给第一个%d,9赋值给第二个%d,所以输出10 9。