• 技术文章 >后端开发 >C#.Net教程

    c语言中什么是逗号运算符并举例

    hzchzc2020-07-02 11:40:05原创1374

    逗号运算符是指在C语言中,多个表达式可以用逗号分开,其中用逗号分开的表达式的值分别结算,但整个表达式的值是最后一个表达式的值。

    逗号运算符是指在C语言中,多个表达式可以用逗号分开,其中用逗号分开的表达式的值分别结算,但整个表达式的值是最后一个表达式的值。

    例子:

    int a1,a2,b=2,c=7,d=5; // 第1行

    a1=(++b,c--,d+3); // 第2行

    a2=++b,c--,d+3; //第3行

    对于给a1赋值的代码,有三个表达式,用逗号分开,所以最终的值应该是最后一个表达式的值,也就是(d+3)的值,为8,所以a1的值为8。

    对于给a2赋值的代码,也是有三个表达式,这时的三个表达式为a2=++b、c--、d+3,(这是因为赋值运算符比逗号运算符优先级高)虽然最终表达式的值虽然也为8,但b=4(第2行代码运算完时,b=3,即第3行代码运行时,b的值为4),所以a2=4。

    注意:逗号运算的结合性是从左至右,完毕之后整个表达式的值是最后一个表达式的值。

    例子:int a[2],x=2,y=5;

    a[0]=(x+3,y++,x++);那么最终结果是:a[0]=2 x=3 y=6;

    为何a[0]=2:因为(x++)是运算之后再自加

    a[1]=(x++,x+3,x+7);那么最终结果是:a[1]=10 ,x=3

    再来一个关于结合性的例子:

    int i=24;

    int n = (i++,i++,i++,i++); // n == 27

    因为逗号运算符的结合性是自左向右,所以四个i++会依次运行,但是最后一个i++在赋值之后才进行运算,所以最终返回27。

    推荐教程: 《c语言教程

    以上就是c语言中什么是逗号运算符并举例的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:c语言
    上一篇:c语言中合法标识符有哪些 下一篇:c语言中“switch case”语句怎么用?
    VIP会员

    相关文章推荐

    • c语言绝对值怎么表示• c语言逗号运算符用法是什么?• &&在C语言中是什么意思• c语言fopen函数的用法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网