作业帮 > 综合 > 作业

假设有变量int i1=10,i2=20,i3=30; 问为什么i3=(i1=1,i2--),结果是20?

来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/14 00:04:48
假设有变量int i1=10,i2=20,i3=30; 问为什么i3=(i1=1,i2--),结果是20?
假设有变量int i1=10,i2=20,i3=30; 问为什么i3=(i1=1,i2--),结果是20?
C语言提供一种特殊的运算符——逗号运算符.用它将两个表达式连接起来.如:
3+5,6+8
称为逗号表达式,又称为“顺序求值运算符”.逗号表达式的一般形式为
表达式1,表达式2
逗号运算符的优先级最低,低于括号.
逗号表达式的求解过程是:先求解表达式1,再求解表达式2.整个逗号表达式的值是表达式2的值.例如,上面的逗号表达式“3+5,6+8”的值为14.
i2本身是20.i2--是先参与运算 在自减1.所以i3=20
运行完=(i1=1,i2--)之后
i1=1
i2=19
i3=20