在c语言中逗号的作用,关于c语言中的逗号运算符???

等下。。答错了。。还需要理解一下神马是逗号表达式。。我前面说的和uuyyhhjj与delta_charlie的意思一样,但其实我们都搞错了。你可以自己把我们的例子都运行一下,看看是不是这样。下面我感觉应该是我正确的理解。逗号表达式是所有运算符中优先级最低的,比赋值运算符还要低。他的作用就是把每个表达式都算一遍,并且把最后一个表达式返回的值作为逗号表达式的值。(把其他的都不管了)像你说的那个,如果是x=200,500;(没有括号),x就会等于200,然后上面整个式子的值是500。但是有括号的话,(200,500)就是一个单独的式子,他的值是500,所以x=(200,500)最后赋值给x就是500举几个例子,x=(21,22,23,24,25);这个里面,先算括号里的,前面的21到24算过后都被丢弃,括号里的表达式的值是25。之后执行赋值运算,x的值就变成括号里表达式的值,25了。如果编译intx;inta;x=(21,22,23,24,25);cout<<"x="<<x<<endl;会输出x=25x=21,22,23,24,25;这行整个是一个表达式。逗号运算符会分别计算表达式x=21、22、23、24、25(单独一个数字也可以叫做表达式)。然后他会用最后一个表达式作为逗号表达式的值。所以整个式子(整个一行)的值是25。但是因为这个值并没有返回给别的变量,他就也被丢弃了。如果编译intx;x=21,22,23,24,25;cout<<x;输出是21。a=(x=21,22,23,24,25);这个里面,除了给x赋值,它又把逗号表达式的值25赋给a。如果编译intx;inta;a=(x=21,22,23,24,25);cout<<"x="<<x<<endl;cout<<"a="<<a<<endl;会输出x=21a=25a=(x=21,22,23,24,x*25);这个里,赋值给x之后又利用x计算了逗号表达式的值,21*25,最后把这个值赋给a如果编译intx;inta;a=(x=21,22,23,24,x*25);cout<<"x="<<x<<endl;cout<<"a="<<a<<endl;会输出x=21a=525简单来说,逗号的作用就是执行每一个表达式,然后用最后一个表达式作为他它的值。看这个可能可以帮助你理解http://blog.csdn.net/great_ghoul/article/details/1779768如有疑问,欢迎您的追问。

阅读全文 >

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值