for循環中的 多個條件限制

for(i=a,j=b; i<c&&j>d; i++,j--){....} 需要滿足二個條件
for(i=a,j=b; i<c,j>d; i++,j--){....} 從左到右滿足最右邊的條件
以前都是把多個條件用 逗號 分隔開寫。for(i=a,j=b; i<c,j>d; i++,j--){....}
一直沒有什么問題。但是今天我做了一個題,一直找不出來錯誤,我單步調試,最后終于被我發現,就是這種寫法錯了。
原來,我之前的寫法其實是逗號運算符, i<c, j>d 結果就是 j>d的結果~~
要想限制,必須要加上&&

逗號運算符:
可用于將相關的表達式鏈接在一起。由于逗號鏈接表達式從左到右進行計算,因此最右邊的表達式的值即為該組合表達式的值。
Example: value = (x = 10, y = 5, x + y);
value = 15;
一些逗號運算符的應用示例:
在for循環中: for ( n = 1, m = 10; n <= m; n++, m++ )
在while循環中: while( c = getchar( ), c != ‘\n’ )
數值交換: t = x, x = y, y = t;

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 在C語言中,五種基本數據類型存儲空間長度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 3,415評論 0 2
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些閱讀 2,054評論 0 2
  • thiele插值算法 1點插值算法 function [C,c]=thiele(X,Y,Z)%X為插值點橫坐標,Y...
    00crazy00閱讀 2,051評論 0 4
  • 一年級語文上冊生字表 生字表一(共400字) 啊(ā)愛(ài)安(ān)岸(àn)爸(bà)八(bā)巴(bā)...
    meychang閱讀 2,881評論 0 6
  • 作者:泰戈爾 譯者:水石山房主人(仗劍書生) 31 譯文: “囚徒,告訴我,是誰將你捆綁?”“是我的主人,”囚徒說...
    水石山房主人閱讀 1,285評論 0 1