分享

C语言三目运算符

 nijiajndx 2010-08-14
表达式1?表达式2:表达式3


   执行顺序:
   先求解表达式1的值,如果为真(非0)则求解表达式2,此时表达式2的值就作为整个条件表达式的值;
   若表达式1的值为假(0)则求解表达式3的值,表达式3的值就是整个条件表达式的值。
   max=(a>b)?a:b
   执行结果就是将表达式的值赋给max,也就是将a,b中大者赋给max。
因为条件运算符的优先级比关系运算符和算术运算符都低,因此可以把括号去掉,写成max=a>b?a:b
条件运算符的 结合方向是“自右至左”
看如下表达式:
a>b?a:c>d?c:d
相当于
a>b?a:(c>d>c:d)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多