关于c语言中的逗号运算符???

如题所述

第1个回答  2019-10-14
在C种
逗号可以当作运算表达式来计算
举例
x=(x=1,x=x+1,x+2)
它是从左自右计算的,等同于先将X赋值为1,然后计算X+1=1+1=2,最后
2+2=4,返回的是4
而你看的这本书估计根本就没怎么详细讲
当X=(200,500,600)

,X先为200,随后又为500,最后又为600,因为没有赋值操作,所以200和500就被覆盖了
第2个回答  2019-11-09
逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。
逗号运算符的优先级是所有运算符中级别最低的,所以x=(200,500)先运算(200,500),200之后是500,所以x=500咯。
如果表达式是这样x=(3+4,4+7),x最后结果是4+7,即x=11。
第3个回答  2020-04-17
逗号运算符(
,
)是C语言运算符中优先级最低的一种运算符,结合顺序是从左至右,用来顺序求值(最后一个逗号后面表达式的值作为整个表达式的值)。
下面举例说明逗号运算符的使用方法:
int
a=3,
b=5,
c;c
=
a>b,
a+b;
//
运行后c值为0,因为逗号运算符的优先级低于赋值运算符,所以先将a>b的结果(为0)赋值给c,之后运算a+b(结果不保存),所以c=0c
=
(a>b,
a+b);
//
运行后c值为8,因为括号的优先级高于赋值运算符,所以先算括号内的表达式,此时计算结果为最后一个表达式的值,即a+b的值,所以c=8本回答被提问者采纳
第4个回答  2019-10-11
逗号运算符(
,
)是c语言运算符中优先级最低的一种运算符,结合顺序是从左至右,用来顺序求值(最后一个逗号后面表达式的值作为整个表达式的值)。
下面举例说明逗号运算符的使用方法:
int a=3, b=5, c;
c = a>b, a+b; // 运行后c值为0,因为逗号运算符的优先级低于赋值运算符,所以先将a>b的结果(为0)赋值给c,之后运算a+b(结果不保存),所以c=0
c = (a>b, a+b); // 运行后c值为8,因为括号的优先级高于赋值运算符,所以先算括号内的表达式,此时计算结果为最后一个表达式的值,即a+b的值,所以c=8
第5个回答  2019-10-14
在C种
逗号可以当作运算表达式来计算
举例
x=(x=1,x=x+1,x+2)
它是从左自右计算的,等同于先将X赋值为1,然后计算X+1=1+1=2,最后
2+2=4,返回的是4
而你看的这本书估计根本就没怎么详细讲
当X=(200,500,600)

,X先为200,随后又为500,最后又为600,因为没有赋值操作,所以200和500就被覆盖了
第6个回答  2019-11-09
逗号运算符可以把两个以上(包含两个)的表达式连接成一个表达式,称为逗号表达式。
逗号运算符的优先级是所有运算符中级别最低的,所以x=(200,500)先运算(200,500),200之后是500,所以x=500咯。
如果表达式是这样x=(3+4,4+7),x最后结果是4+7,即x=11。
第7个回答  2020-04-17
逗号运算符(
,
)是C语言运算符中优先级最低的一种运算符,结合顺序是从左至右,用来顺序求值(最后一个逗号后面表达式的值作为整个表达式的值)。
下面举例说明逗号运算符的使用方法:
int
a=3,
b=5,
c;c
=
a>b,
a+b;
//
运行后c值为0,因为逗号运算符的优先级低于赋值运算符,所以先将a>b的结果(为0)赋值给c,之后运算a+b(结果不保存),所以c=0c
=
(a>b,
a+b);
//
运行后c值为8,因为括号的优先级高于赋值运算符,所以先算括号内的表达式,此时计算结果为最后一个表达式的值,即a+b的值,所以c=8本回答被提问者采纳
第8个回答  2019-10-11
逗号运算符(
,
)是c语言运算符中优先级最低的一种运算符,结合顺序是从左至右,用来顺序求值(最后一个逗号后面表达式的值作为整个表达式的值)。
下面举例说明逗号运算符的使用方法:
int a=3, b=5, c;
c = a>b, a+b; // 运行后c值为0,因为逗号运算符的优先级低于赋值运算符,所以先将a>b的结果(为0)赋值给c,之后运算a+b(结果不保存),所以c=0
c = (a>b, a+b); // 运行后c值为8,因为括号的优先级高于赋值运算符,所以先算括号内的表达式,此时计算结果为最后一个表达式的值,即a+b的值,所以c=8
相似回答
大家正在搜