条件运算符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;

PacificRack:洛杉矶KVM月付1.5美元起,1G内存套餐年付12美元起

PacificRack在本月发布了几款特价产品,其中最低款支持月付仅1.5美元,基于KVM架构,洛杉矶机房,PR-M系列。PacificRack简称PR,QN机房旗下站点,主要提供低价VPS主机产品,基于KVM架构,数据中心为自营洛杉矶机房,现在只有PR-M一个系列,分为了2个类别:常规(Elastic Compute Service)和多IP产品(Multi IP Server)。下面列出几款秒...

HostKvm香港VPS七折:$5.95/月KVM-2GB内存/40GB硬盘/500GB月流量

HostKvm是一家成立于2013年的国外主机服务商,主要提供VPS主机,基于KVM架构,可选数据中心包括日本、新加坡、韩国、美国、俄罗斯、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。商家本月针对香港国际机房提供特别7折优惠码,其他机房全场8折,优惠后2G内存香港VPS每月5.95美元起,支持使用PayPal或者支付宝付款。下面以香港国际(HKGlobal)为...

乐凝网络支持24小时无理由退款,香港HKBN/美国CERA云服务器,低至9.88元/月起

乐凝网络怎么样?乐凝网络是一家新兴的云服务器商家,目前主要提供香港CN2 GIA、美国CUVIP、美国CERA、日本东京CN2等云服务器及云挂机宝等服务。乐凝网络提供比同行更多的售后服务,让您在使用过程中更加省心,使用零云服务器,可免费享受超过50项运维服务,1分钟内极速响应,平均20分钟内解决运维问题,助您无忧上云。目前,香港HKBN/美国cera云服务器,低至9.88元/月起,支持24小时无理...

条件运算符为你推荐
项目质量管理在项目质量管理中有什么项目质量管理工程项目质量管理制度有哪些fast路由器如何设置fast无线路由器具体步骤光纤是什么光纤是什么网站价格注册网站要多少钱?硬盘分区格式化怎样给硬盘分区并格式化硬盘分区格式化电脑硬盘怎么全部格式化并重新分区?购物网站设计Jsp+Sql电子商城&网上购物网站设计海淀区公司注册注册海淀公司需要验资报告吗怎样上传照片怎么上传照片?
动态域名解析软件 鲨鱼机 directadmin godaddy域名转出 dropbox网盘 合肥鹏博士 骨干网络 权嘉云 1g空间 购买国外空间 申请网页 免费私人服务器 google台湾 lamp什么意思 万网主机 国内空间 大化网 godaddyssl 防盗链 weblogic部署 更多