当前位置:刘伯温火凤凰公式网 > 三目运算符 >

三目运算符

  因为三目运算符比赋值运算符优先级高,所以我认为上面两个式子加不加括号都一样,

  但为什么第二个表达式实际上运算顺序是xy?m=1:(n=0);,是把n=0也当成三目的一个分支展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部二者区别较大:对于(xy?m=1:n)=0;,无论xy是否成立,结果都是0,所以这是无效语句,就相当于写了一个0。对于xy?m=1:n=0;,当xy为“线分支被执行。更多追问追答追问第一个我知道,我是说第二个n=0这里,我觉得假的时候应该是n,因为赋值运算符比三目低所以第二个式子也应该任何为0我题目描述的不太清楚下面这张图

  我明白你说的意思。但我想所谓=的优先级比:低恐怕得推敲,CC++规定的=运算符的优先级比整体?e:e三目运算符低,并非比:低或比?低,因为单独的?和:都不是CC++的运算符;就是说可以用c=ab ? x : y;把ab ? x : y运算结果赋给c。完全个人理解,仅供参考。

http://idagoldadv.com/sanmuyunsuanfu/7.html
点击次数:??更新时间2019-05-17??【打印此页】??【关闭
  • Copyright © 2002-2017 DEDECMS. 织梦科技 版权所有  
  • 点击这里给我发消息
在线交流 
客服咨询
【我们的专业】
【效果的保证】
【百度百科】
【因为有我】
【所以精彩】