for循环中的 多个条件限制

for(i=a,j=b; id; i++,j--){....} 需要满足二个条件
for(i=a,j=b; id; i++,j--){....} 从左到右满足最右边的条件
以前都是把多个条件用 逗号 分隔开写。for(i=a,j=b; id; i++,j--){....}
一直没有什么问题。但是今天我做了一个题,一直找不出来错误,我单步调试,最后终于被我发现,就是这种写法错了。
原来,我之前的写法其实是逗号运算符, id 结果就是 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;

你可能感兴趣的:(for循环中的 多个条件限制)