理解逗号运算符

理解逗号运算符,第1张

概述int main(){ int a = (1,2,3); int b = (++a, ++a, ++a); int c= (b++, b++, b++); printf("%d %d %d", a,b,c);} 我是编程初学者.我没有得到这个程序如何显示6 9 8的输出. 用于所有三个声明 int a = (1,2,3);int b = (++a, ++a,
int main(){    int a = (1,2,3);    int b = (++a,++a,++a);    int c= (b++,b++,b++);    printf("%d %d %d",a,b,c);}

我是编程初学者.我没有得到这个程序如何显示6 9 8的输出.

解决方法 用于所有三个声明
int a = (1,3);int b = (++a,++a);int c = (b++,b++);

它是comma operator.它计算第一个 *** 作数1并丢弃它,然后计算第二个 *** 作数并返回其值.因此,

int a = ((1,2),3);          // a is initialized with 3.int b = ((++a,++a),++a);   // b is initialized with 4+1+1 = 6.                              // a is 6 by the end of the statementint c = ((b++,b++),b++);   // c is initialized with 6+1+1 = 8                             // b is 9 by the end of the statement.

1在逗号运算符的情况下,从左到右保证评估顺序.

总结

以上是内存溢出为你收集整理的理解逗号运算符全部内容,希望文章能够帮你解决理解逗号运算符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1233408.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存