c语言运算符
#include <stdio.h>void main()
{
int a=2, b=4, c=6, x, y;
y = (x = a+b),(b+c);
printf("y = %d, x = %d\n", y,x);
}
执行结果:y = 6, x = 6
你想问什么??
x=a+b = 6
y = x = 6
有什么问题么? 本帖最后由 ●初晨猛胾● 于 2014-9-21 16:56 编辑
加个括号完美解决
#include<stdio.h>
void main()
{
int a=2,b=4,c=6;
int x,y;
y=((x=a+b),(b+c));//加个括号完美解决
printf("y=%d,x=%d\n",y,x);
}
开始学的时候总是以为应该是加个括号后的结果。现在发上来只是让人思考一下。为什么是这个结果。 ●初晨猛胾● 发表于 2014-9-21 16:54
加个括号完美解决
#include
void main()
为什么会这样,麻烦大佬帮忙解释下{:5_107:} 逗号运算符,多个表达式可以用逗号分开,其中用逗号分开的表达式的值分别结算,但整个表达式的值是最后一个表达式的值。
页:
[1]