C語言中的逗號運算符詳解
C語言中的逗號運算符
在C語言中逗號“,”也是一種運算符,稱為逗號運算符。 其功能是把兩個表達式連接起來組成一個表達式, 稱為逗號表達式。其一般形式為:
表達式1, 表達式2
其求值過程是分別求兩個表達式的值,并以表達式2(即最右邊的一個表達式)的值作為整個逗號表達式的值。
#include<stdio.h>
int main()
{?? ?
?? ?int i ,a;
?? ?i =(a=2*3, a*5), a+6;?
?? ?printf("%d", i);
?? ?return 0;?? ?
?}輸出結果:30.
原因分析:
優(yōu)先級排列中,括號>加減乘除>賦值>逗號。
所以當前這個等式的運算應該是:
step1:a = 2*3; //結果a=6
step2:計算a*5; //結果是30【注意:此時a的值是不變的,仍舊是6?。?!】
step3:i = (a=2*3, a*5); //得到i值:30.【不去執(zhí)行a+6的原因在于:因為賦值符號 = 的優(yōu)先級比逗號的高,所以直接把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語言中的逗號運算符的文章就介紹到這了,更多相關C語言逗號運算符內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vscode+platformIO開發(fā)stm32f4的實現(xiàn)
這篇文章主要介紹了vscode+platformIO開發(fā)stm32f4的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-05-05

