提几个C++的问题,金山烈火工作室的面试题

来源:百度知道 编辑:UC知道 时间:2024/05/14 07:54:13
1.if(x==x==x)
x在什么情况下if语句为true?

2.if(x!=x!=x)
x在什么情况下if语句为true?

这个要看X为什么类型,我假设为整型数据
1,当X==1时
2,当X!=0时

如果X为BOOL型的话,两个答案都是X==TRUE

Yenn,你去好好看看书,结合方向自右向左的就那几个,==和!=的结合方向都是自左向右好不,别误导别人了,还有后面的kapok3000也来参和

自右向左的运算符只有两类,一类是赋值运算符,另一类就是单目运算符,很好记

考的其实就是"运算顺序"和"赋值语句本身的值"两个知识.
第一,C语言运算是自右向左的;
第二,赋值语句本身的值等于所赋的值;
这么一来可改写为: if(x==(x==x)) if(x!=(x!=x))
这就很明了了.

答案为:

顶 PcrazyC

我反正是没看出有什么赋值语句,==,!=都是正而巴金的从左到右

1. x=1的时候为真

2 x!=0的时候为真

如果不用0,1表示真假,有BOOL类型

那么x=true的时候 if里面都会为true

结合Yenn - 高级经理 七级 和华工大学生 - 高级经理 六级看,
华工大学生 - 高级经理 六级给出了答案,Yenn - 高级经理 七级
给出了解释

1.x==1;
2.答x!=0时为TRUE.

1.答:在x=1的情况下,或者是x=true的情况下
2.答:和上题答案一样.