条件运算符嵌套_条件运算符(?:)的运算过程是什么

条件运算符嵌套_条件运算符(?:)的运算过程是什么条件运算符(?:)都知道就不细说了,最简单也是最常用的例子:n=(a>b)?a:b;    在C++primerplus第六版180页看到了一个例子,如下所示:    constcharx[2][20]={“Jason”,”atyourservices\n”}    constchar*y=”Quillstone”;

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

       条件运算符(?:)都知道就不细说了,最简单也是最常用的例子:n = (a > b) ? a : b;

       在C++ primer plus第六版180页看到了一个例子,如下所示:
       const char x[2] [20] = {“Jason”,”at your services\n”}

       const char * y = “Quillstone”;


       for(int i = 0; i <3; i++)

              cout<<((i < 2)? !i ? x[i] : y : x[1]);

       打印结果为:

       Jason Quillstone at your services

       

       乍一看有点愣住,但仔细看就会发现,原表达式的意思是(i < 2)? (!i ? x[i] : y) : x[1],再对照结果一看,印证了我的想法。在网上找到的例子中还有各种眼花缭乱的嵌套用法,但只要找到每个(?:)运算符应该是怎么配对的,就很容易理解了。

        还有一点,该书中说这个技巧完成了一个应被谴责的任务——隐藏代码,书中没有解释,网上也没有相关的资料。那这个条件运算符的代码隐藏体现在什么地方呢?我的理解就是:1、隐藏了一对圆括号。2、将代码缩短了,使得其难于理解。

         说了这么多,然而这个条件运算符嵌套并没有什么卵用。最常用的就那种最简单的形式,嵌套的越多代码越难于阅读和理解,这时候使用 if else 语句来表达会更为清晰。

        

        

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186754.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月2日 下午2:16
下一篇 2022年10月2日 下午2:16


相关推荐

  • 马拉车算法Java_马拉车算法(Manacher’s Algorithm)

    马拉车算法Java_马拉车算法(Manacher’s Algorithm)这是悦乐书的第 343 次更新 第 367 篇原创 Manacher sAlgorithm 中文名叫马拉车算法 是一位名叫 Manacher 的人在 1975 年提出的一种算法 解决的问题是求最长回文子串 神奇之处在于将算法的时间复杂度精进到了 O N 下面我们来详细介绍下这个算法的思路 01 算法由来在求解最长回文子串的问题时 一般的思路是以当前字符为中心 向其左右两边扩展寻找回文 但是这种解法的时间复杂度是 O

    2026年3月18日
    0
  • 扣子Coze教程:自动采集1000条小红书爆款笔记(附实战工作流)

    扣子Coze教程:自动采集1000条小红书爆款笔记(附实战工作流)

    2026年3月12日
    16
  • python邮件自动发送测试报告,看这篇文章就够了

    python邮件自动发送测试报告,看这篇文章就够了

    2021年5月24日
    131
  • Ios frida_frida

    Ios frida_frida一、FridaFrida是一款基于Python+javascript的hook框架,通杀android\iOS\linux\win\osx各平台。Frida原理是手机端安装一个server程序把手机端的端口转到PC端写的python脚本进行通信,而Python脚本中采用javascript语言编写hook代码。①installfridaondeviceStartCydiaandaddFrida’srepositorybynavig

    2025年6月22日
    5
  • Linux 修改文件权限

    Linux 修改文件权限目录:1、介绍:2、权限说明3、用户4、权限设置5、权限设置格式:(1)增加权限:(2)撤销权限(3)无任何权限1、介绍:​ Linux系统中,每个文件或目录都有访问许可权限,用它来确定以何种方式对文件或目录进行访问和操作。在Linux中,如果要对文件的权限进行修改,那么可在终端中使用chmod命令对其文件的权限进行修改,但是chmod命令修改文件权限有两种方式:1、字母法,2、数字法2、权限说明​ (1)只读:表示只允许读取内容,而禁止其对该文件做其他任何操作​ 字母法:‘r’

    2025年10月29日
    4
  • Query $.each用法

    Query $.each用法Query each 用法以下内容非原创 来自百度文库 http wenku baidu com view 4796b6145f0e html nbsp 通过它 你可以遍历对象 数组的属性值并进行处理 使用说明 each 函数根据参数的类型实现的效果不完全一致 1 遍历对象 有附加参数 each Object function p1 p2

    2025年8月25日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号