int a=2,b=1;cout<<a>b?"a>b":"a<b"<<endI;输出结果为?

来源:百度知道 编辑:UC知道 时间:2024/05/30 04:22:07

首先,你这语句就有问题了。
从优先级上看,cout<<a的优先级比三目运算符要高,因此先运行的是cout<<a,后面的>b?"a>b":"a<b"<<endl就出错了,压根就无法编译通过,因此在这里三目运算要加上括号,cout<<(a>b?"a>b":"a<b")<<endl;这样才正确。
改正后的输出结果是a>b

人家都说对了,我就在具体点,a>b?"a>b":"a<b",就是这个带问好,冒号的,如果问号前边的为真,则输出冒号前边的,若为假输出冒号后边的,就是
东东?东东:东东,第一个作为判断条件,为真输出这个,为假就输出那个
把这个语句加到cout后边,应该还好理解吧

"a>b"
上面为3目运算符, 比较a>b 为真则输出'a>b",假则输出"a<b"