C语言中的逗号运算符
2017-05-07 22:42
162 查看
逗号运算符: 将两个表达式连接起来,又称为“顺序求值运算符”,
如:3+5,6+8
逗号表达式 的值为14
一般形式: 表达式1,表达式2
求解过程: 先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
我们来看一段程序:
#include <stdio.h>
int main()
{
int x = 1, y = 1, z;
z = (x++, y++, ++y);
printf("x = %d, y = %d, z = %d\n", x, y, z);
}
结果:
x = 2
y = 3
z = 3
解释:
逗号表达式从左向右执行,整个表达式语句的值是最后一个表达式的值。
在这条语句中,x一共加了一次“1”,所以x == 2;y一共加了两次“1”,所以y == 3;整个逗号表达式的值为“++y”的值,所以表达式的值为3(之前y++之后,y == 2),所以z == 3。
如:3+5,6+8
逗号表达式 的值为14
一般形式: 表达式1,表达式2
求解过程: 先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
我们来看一段程序:
#include <stdio.h>
int main()
{
int x = 1, y = 1, z;
z = (x++, y++, ++y);
printf("x = %d, y = %d, z = %d\n", x, y, z);
}
结果:
x = 2
y = 3
z = 3
解释:
逗号表达式从左向右执行,整个表达式语句的值是最后一个表达式的值。
在这条语句中,x一共加了一次“1”,所以x == 2;y一共加了两次“1”,所以y == 3;整个逗号表达式的值为“++y”的值,所以表达式的值为3(之前y++之后,y == 2),所以z == 3。
相关文章推荐
- c语言中逗号运算符和逗号表达式
- c语言中逗号运算符和逗号表达式
- 补.从零开始学习C语言--运算符补充(自增/自减、三目、逗号)
- 第03天C语言(09):逗号运算符
- c语言中逗号运算符和逗号表达式
- C语言中的逗号运算符
- C语言的逗号运算符
- C语言中的逗号运算符
- C语言中的逗号运算符
- C语言学习篇:逗号运算符的应用
- C语言中的逗号运算符
- c语言中逗号运算符的作用
- 【c】c语言中逗号运算符和逗号表达式
- C语言之逗号运算符、自动转换和强制转换
- c语言中逗号运算符和逗号表达式
- c语言中逗号运算符和逗号表达式
- C语言中逗号运算符和逗号表达式
- c语言中逗号运算符和逗号表达式
- c语言 转义符 算术运算符及赋值运算符 复合运算符 逗号运算式和表达式 关系运算符 逻辑运算符
- c语言学习之基础知识点介绍(四):算术运算符和逗号表达式