推扬网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
推扬网 门户 你问我答 查看内容

C语言问号表达式是什么?

2020-7-14 16:47| 发布者: admin| 查看: 52| 评论: 0

摘要: 拧发条鸟啊的回答 ……?……:……式A?B:C值为:若A为真,则B;若A为假,则C。但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向尤其是当问号表达式嵌套使用时得注意这个问题,例如代 ...

拧发条鸟啊的回答

……?……:……

式A?B:C值为:若A为真,则B;若A为假,则C。

但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向

尤其是当问号表达式嵌套使用时得注意这个问题,例如

代码:

int a=1,b=2,c=3,d=4;

printf("%d",a<b?a:c<d?c:d);

正确结果是:1

因为先执行的是c<d?c:d,会返回c,然后执行a<b?a:c

因此得到的结果就是1(可以在编译器上实验一下)

乜灵波缑熙的回答

……?……:……
式A?B:C值为:若A为真,则B;若A为假,则C。
但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向
尤其是当问号表达式嵌套使用时得注意这个问题,例如
代码:
int
a=1,b=2,c=3,d=4;
printf("%d",a
评论


加载更多

爱舒戈娟的回答

……?……:……
式A?B:C值为:若A为真,则B;若A为假,则C。
但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向
尤其是当问号表达式嵌套使用时得注意这个问题,例如
代码:
int
a=1,b=2,c=3,d=4;
printf("%d",a
评论


加载更多

鲜花

握手

雷人

路过

鸡蛋

最新评论

热门推荐
最新资讯

广告服务|投稿要求|禁言标准|版权说明|免责声明|手机版|小黑屋|推扬网 ( 粤ICP备18134897号 )|网站地图 | 邮箱:vayae@hotmail.com

GMT+8, 2024-3-28 19:05 , Processed in 0.072000 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

返回顶部