C語言,逗號操作符的妙用,值得一看

卷首語

C語言的逗號操作符,具有最低的運算符優先級,整個表達式的值,就是最右邊的那一個值,對於新手,恐怕會問,這運算符有個鳥用?

逗號操作符

用法如下:

expression1, expression2, expression3,.... , expressionN

它從左到右依次計算各表達式,但其值為最右邊的expressionN。也就是說:

X = expression1, expression2, expression3,.... , expressionN;

X的結果等同於:

X = expressionN; 

那麼它有什麼用呢?

逗號操作符的妙用

利用逗號操作符,各表達式均會被計算,且結果為最右邊表達式的特點,可以將多個語句合併為一個語句,使代碼更為簡潔。

例1:

if(a, b+c, e=d/20, e>0)
{
//...
}
//等效於
a;
b + c;
e = d / 20;
if( e > 0 )
{
//.....

}
//好像還是沒有什麼作用,該寫的還是要寫,沒少敲代碼,還很難看,-_-||

繼續看例子:

例2:是我們常見的一個場景,在循環語句前,需要獲取一次循環變量的值:

x = getX();
while(x < 100)
{
\t x = getX();
increaseX(x);
}
//用逗號操作符改造一下
while (x = getX(), x < 100 )
{
increaseX(x);
}

優點:可以看到,使用逗號操作符改造以後,省略了開頭的x = getX()語句,如果getX()是一個很複雜的表達式,則我們可以少敲不少代碼,並且如果出現需要修改getX()函數的地方,修改後,就只需要改1個地方即可,代碼變得更為簡潔,易於維護。

卷尾語

關注 ,普及計算機知識,講解C/彙編/C++/JAVA/Phyton等編程語言。

做創客,愛編程。

歡迎糾錯,討論,喜歡的給個關注,需要的可以私信,送資料,每天都會抽空回覆。


分享到:


相關文章: