C語言基礎 關於逗號表示式

2021-10-02 11:29:37 字數 787 閱讀 9062

之前有個同學問了我乙個**,

#include

intmain()

這個**的執行結果如下:

可以看到,輸出的結果是6,也就是b的值,所以是為什麼呢,只有乙個%d但是卻先輸出了右邊的值,我們去掉括號做乙個對比。

可以看到輸出的是3,也就是a的值。

這就是c語言中乙個有趣的運算子,逗號表示式,注意是 運算子。

它的優先順序最低,將兩個及以上的式子鏈結起來,並從左向右依次運算,整個逗號表示式的值為最右邊的表示式的值,如:(3+5,6+8)稱為逗號表示式,其求解過程先表示式1,後表示式2,整個表示式值是表示式2的值。

所以,這個**還可以這麼寫:

#include

intmain()

是不是很神奇,還可以這樣對c賦值。

結果為6。

以上就是c語言乙個簡單但容易被忽視的小運算子,逗號。

C語言 逗號表示式

c語言提供一種特殊的運算子 逗號運算子。用它將兩個表示式連線起來。如 3 5,6 8 稱為逗號表示式,又稱為 順序求值運算子 逗號表示式的一般形式為 表示式1,表示式2 逗號表示式的求解過程是 先求解表示式1,再求解表示式2。整個逗號表示式的值是表示式2的值。例如,上面的逗號表示式 3 5,6 8 ...

C語言逗號表示式

c語言提供一種特殊的運算子,逗號運算子,優先級別最低,它將兩式聯接起來,如 3 5,6 8 稱為逗號表示式,其求解過程先表示式1,後表示式2,整個表示式值是表示式2的值,如 3 5,6 8 的值是14,a 3 5,a 4 的值是60,原因在於賦值運算優先順序高於逗號表示式。逗號表示式的要領 1.從左...

C語言逗號表示式

c語言提供一種特殊的運算子,逗號運算子,優先級別最低,它將兩式聯接起來,如 3 5,6 8 稱為逗號表示式,其求解過程先表示式1,後表示式2,整個表示式值是表示式2的值,如 3 5,6 8 的值是14,a 3 5,a 4 的值是60,原因在於賦值運算優先順序高於逗號表示式。逗號表示式的要領 1.從左...