条件运算符C语言 条件运算符:?: 怎么运算

条件运算符  时间:2021-09-09  阅读:()

条件运算符的嵌套

条件运算符的语法为: (条件表达式)?(条件为真时的表达式):(条件为假时的表达式) 例如: x=a<b?a:b; 条件运算符构成一个表达式。

它是C++中唯一一个3元运算符,它们之间用“?”和“:”隔开。

上例中,把a和b中较小的值赋给x。

该例是if...else语句的一个替代: if(a<b) x=a; else x=b; 条件运算符构成表达式,它是有值的。

而if..else语句不能有值,所以if..else语句不能替代条件运算符。

例如,下面的代码不能由if..else替代: cout <<(a<b?a:b) <<endl; 输出语句要打印一个值,该值是a与b的较小值。

由于<<的优先级高于条件运算符,所以输出语句中要将条件运算符构成的表达式用括号括起来。

条件运算符表达式的值与测试值没有直接的关系。

例如: cout <<(number==l?"file":"files") <<endl; 该输出语句中,条件运算符表达式的条件若成立,取值为“file”,否则,取值为“files”。

其中,条件为两个整型数的比较, 而表达式的值为字符串。

条件运算符可以嵌套。

例如: x>y?"greater than":x==y?"equal to":"less than" 它等价于: (x>y)?"greater than":((x==y)?"equal to":"less than") 当x>y时,值为"greater than",x==y时,值为"equal to",否则,值为"less than"。

条件运算符的嵌套可读性不够好。

在一个条件运算符的表达式中,如果后面两个表达式的值类型相同,均为左值,则该条 件运算符表达式的值为左值表达式。

例如: int x=5; long a,b; (x?a:b)=1; //ok:因为a和b都是左值 (x?x:a)=2;//error:x和a不同类型。

编译器将其解释为(1ong)x和a (x==271:a)=3; //error:1非左值 "(x?a:b)=1"表示当x为0时,b=1,否则a=1。

这里的括号是必须的,否则将被看作x?a:(b=1)。

"(x?x:a)=2”中,尽管x是左值,a也是左值,但x与a不同类型,条件运算符要对其进行操作数的隐式转换,使之成为相同的类型。

任何被转换的变量都不是左值。

->在C中,条件运算符是不能作左值的,所以"(x?a:b)=1;"将通不过编译。

C语言 条件运算符:?: 怎么运算

int a=x>y?6:7;

等同于

int a;

if(x>y)

a=6;

else a=7;

90IDC-香港云主机,美国服务器,日本KVM高性能云主机,创建高性能CLOUD只需60秒即可开通使用!

官方网站:点击访问90IDC官方网站优惠码:云八五折优惠劵:90IDCHK85,仅适用于香港CLOUD主机含特惠型。活动方案:年付特惠服务器:CPU均为Intel Xeon两颗,纯CN2永不混线,让您的网站更快一步。香港大浦CN2測速網址: http://194.105.63.191美国三网CN2測速網址: http://154.7.13.95香港购买地址:https://www.90idc.ne...

德阳电信高防物理机 16核16G 50M 260元/月 达州创梦网络

达州创梦网络怎么样,达州创梦网络公司位于四川省达州市,属于四川本地企业,资质齐全,IDC/ISP均有,从创梦网络这边租的服务器均可以备案,属于一手资源,高防机柜、大带宽、高防IP业务,一手整C IP段,四川电信,一手四川托管服务商,成都优化线路,机柜租用、服务器云服务器租用,适合建站做游戏,不须要在套CDN,全国访问快,直连省骨干,大网封UDP,无视UDP攻击,机房集群高达1.2TB,单机可提供1...

ZJI(月付480元),香港阿里云专线服务器

ZJI是成立于2011年原Wordpress圈知名主机商—维翔主机,2018年9月更名为ZJI,主要提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。本月商家针对香港阿里云线路独立服务器提供月付立减270-400元优惠码,优惠后香港独立服务器(阿里云专线)E3或者E5 CPU,SSD硬盘,最低每月仅480元起。阿里一型CPU:Intel E5-2630L...

条件运算符为你推荐
bug代码bug的错误代码项目质量管理什么是工程项目质量管理?小项目现在有什么好的小项目可以做啊图片修改工具推荐个好用的修改图片的工具阿里下载阿里旺旺在哪里下载?burndownburn down是否及物?能用被动语态吗?硬盘分区格式化电脑进入系统硬盘分区及格式化,怎样操作?soap是什么意思rbq是什么意思?电商网站设计电商网站设计需要注意哪些主板说明书电脑主板的作用是什么?
免费网站空间 过期域名查询 合租服务器 vps推荐 liquidweb sugarsync 10t等于多少g 12306抢票攻略 godaddy优惠券 一元域名 元旦促销 dux 圣诞促销 hostker 1g空间 789电视剧 网站在线扫描 drupal安装 免费mysql数据库 无限流量 更多