C語言中的逗號運算子

2021-10-11 11:53:41 字數 675 閱讀 1070

在c語言中逗號「,」也是一種運算子,稱為逗號運算子。 其功能是把兩個表示式連線起來組成乙個表示式, 稱為逗號表示式。其一般形式為:

表示式1, 表示式2

其求值過程是分別求兩個表示式的值,並以表示式2(即最右邊的乙個表示式)的值作為整個逗號表示式的值。

#includeint main()

輸出結果:30.

原因分析:

優先順序排列中,括號》加減乘除》賦值》逗號。

所以當前這個等式的運算應該是:

step1:a = 2*3;  //結果a=6

step2:計算a*5; //結果是30【注意:此時a的值是不變的,仍舊是6!!!】

step3:i = (a=2*3, a*5);  //得到i值:30.【不去執行a+6的原因在於:因為賦值符號 = 的優先順序比逗號的高,所以直接把30賦值給了 i。 】

如果該等式變成了   i=(a=2*3,a*5,a+6);  

則輸出結果為12.

step1:a = 2*3;  //結果a=6

step2:計算a*5; //結果是30

step3:計算a+6;//結果是12

step4:將最右邊的乙個等式a+6的值賦給i

C語言中的逗號運算子

逗號運算子 將兩個表示式連線起來,又稱為 順序求值運算子 如 5,逗號表示式 的值為14 一般形式 表示式 表示式 求解過程 先求解表示式 再求解表示式 整個逗號表示式的值是表示式 的值。我們來看一段程式 include int main int x 1,y 1,z z x y y printf x...

C語言逗號運算子

在c語言中逗號 也是一種運算子,其功能是把兩個表示式連線起來組成乙個表示式,稱為逗號表示式。其一般形式為 表示式1,表示式2 其中用逗號分開的表示式的值分別運算,但整個表達上的值是最後乙個表示式的值。逗號運算子的優先順序是運算子中最低的,比其他運算子都低。例如 includeusing std ci...

C語言逗號運算子

在c語言中逗號 也是一種運算子,稱為逗號運算子。其功能是把兩個表示式連線起來組成乙個表示式,稱為逗號表示式。其一般形式為 表示式1,表示式2 其求值過程是分別求兩個表示式的值,並以表示式2的值作為整個逗號表示式的值。例3 19 逗號運算子舉例 複製純文字新視窗 include int main vo...