加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

for循环中有多个限制结束条件的正确写法(小心逗号运算符)

(2012-06-29 11:38:20)
标签:

杂谈

分类: 编程语言相关

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;

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有