c语言 逗号表达式的运算规则?
逗号表达式的运算规则?
C语言提供了一个由逗号运算符连接的公式,称为逗号表达式。逗号运算符也称为顺序求值运算符。
1. 一般形式
表达式1,表达式2从左到右依次计算每个表达式的值,“表达式n”的值就是整个逗号表达式的值。
例如,逗号表达式“a=3*5,a*4”=60的值:首先解出a=3*5,得到a=15;然后求出a*4=60,所以逗号表达式的值=60。
另一个例子是逗号表达式“(a=3*5,a*4),a 5的值是20:首先解a=3*5,得到a=15;然后解a*4=60;最后解a 5=20,所以逗号表达式的值是20。
注意:逗号不会到处出现,它们都是逗号运算符。在许多情况下,逗号仅用作分隔符。
逗号表达式的用法?
C语言提供了一个特殊的输入运算符--逗号运算符表达式1,表达式2。逗号表达式的求解过程是:先求表达式1,再求表达式2。整个逗号表达式的值是表达式2的值,例如表达式“3、5、6、8”的值是14。另一个例子是逗号表达式:“a=3*5,a*4”。赋值运算符的优先级高于逗号运算符的优先级,因此应首先求解a=3*5。经过计算和赋值,a的值是15,然后解出a*4得到60。整个逗号表达式的值是60。逗号表达式的一般形式可以扩展到表达式1、表达式2、表达式3、,。。。表达式n。它的值是表达式n的值。逗号运算符是所有运算符中的最低级别。
求编程大侠解答!一个C语言逗号表达式和括号的问题?
逗号易于处理。逗号只是将两个公式分开。括号的主要作用是将括号内的运算公式作为一个整体,也具有优先运算的含义(其含义与数学上相同)。对于你的程序,首先,B,原来的公式是(B=4*5,B*2),B 6先计算B=4*5,然后B=20,然后逗号后面的公式是B*2。注意,这里并没有说把结果赋给B,所以B仍然等于20。最后的b6是一样的。它只计算一个公式,不保存结果,所以B的最终输出是20;另外,a,输出公式是一个括号,是一个整体。在公式中,先计算a=3*5,这样a=15,再计算a*4,也不保存。A还是15,最后算出A是5。此时,没有赋值,因此a=15。
但是,由于同一个括号中有两个逗号分隔三个公式,因此括号的总值由最后一个公式确定,最后一个公式的值是A5,即155,因此括号的总值是20,输入值是20。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。