⑴ c语言中语句中 "连等" 问题
连等关键有两点:
1、运算符的优先级跟结合性。
2、一个赋值表达式是有值的,值就是被赋的值,比如a=3
,这个赋值表达式的值就是3,若有b=(a=3),则b的值为3.
例如:
a=b=c中只有一个运算符,等号,所以优先级是一样的,而等号的结合性是从右向左的(也就是等式从右往左计算),所以a=b=c
等同于
a=(b=c),故a=4,b=4;
⑵ C语言中,如果要判断两个数是否同时为1,能不能用连等表达式
上面的不行,逻辑判断连续来语法上是没有问题的,但是得不到想要的结果,呵呵
道理应该很简单,如a == b == 1这个,运算顺序是先运算a == b返回值是0或者1,再让这个0或者1和这个后面的表达式运算,也就是0或者1和后面的1运算,
0==1或者1==1来做
所以说语法上没有问题,但是结果不一定是你想要的
如果ab都为2,那么a==b返回1,和1运算,那么返回1,但是ab是2,但不是1,可是返回1,是正确的
明白没??????????
⑶ C语言能连等么a=b=14
能。
a=b=14的意思是将14赋给a和b,最后a和b都等于14,并不是判断a和b是否与14都相等。
⑷ c语言在判断的时候可不可以连续等于
楼主您好!
这是不符合C语言规范的。
使用if(a==b==c)的结果将是:
1)判断a==b
2)用(a==b)运算的结果(一个布尔值,true或者false)与c进行==运算
希望能解答您的问题。
祝您愉快。
⑸ c语言中什么时候不能连等 什么时候能连等
1、首先在电脑中打开vc6.0, 新建一个vc项目,添加头文件,如下图所示。
⑹ c语言的赋值语句可以有连续两个等号吗
可以的,C语言中赋值表达式的返回值会向左传递。也就是说a=2这个表达式的值为2。这时如果if(2==(a=2))那么if的值为真。
也就是说a=b=c=3是合法的。但是a=b+2=9是不行的,因为9的值不能赋给2,它是个常量。
赋值运算符右侧的值由表达式生成,而表达式则由文本、常数、变量、属性、数组元素、其他表达式或函数调用的任意组合所构成。下面的示例阐释这一点。
(6)c语言中数据能不能连等扩展阅读:
赋值语句的形式:
1、a = 3;{赋予变量常数值}
2、b = a + 1;{将含有其它变量的表达式赋予变量}
3、N = N。
赋值语句中的数据类型
1、基本类型;
2、构造类型;
3、指针类型;
4、空类型。
⑺ C语言连不等
你上面说的写法是可以的!但是如果写成这样旧错了
int a=b=c=d=1;
C语言中不允许出现这样的连等式!
但先定义然后再再连等式可以的
⑻ C语言中允许出现连等的形式吗
你上面说的写法是可以的!但是如果写成这样旧错了
int a=b=c=d=1;
C语言中不允许出现这样的连等式!
但先定义然后再再连等式可以的
⑼ c语言的赋值语句可以有连续两个等号吗
可以的,C语言中赋值表达式的返回值会向左传递。也就是说a=2这个表达式的值为2。这时如果if(2==(a=2))那么if的值为真。也就是说a=b=c=3是合法的。但是a=b+2=9是不行的,因为9的值不能赋给2,它是个常量。把握住这一点,你就能推算出很多东西了。
⑽ C语言中能不能用连等来进行判断
不对,m==n如果为真返回值为1,然后变成1==s[0];判断与目的不符,错