zoukankan      html  css  js  c++  java
  • C语言之三目运算符

    三目运算符

                 三目运算符:也叫三元运算符。这个运算符的符号是: ? :

     

     语法:

         表达式1 ? 表达式2 : 表达式3;

     

     语义:

         先执行表达式1,执行完毕,表达式1的结果如果为真,那么执行表达式2,并且这个整体的运算式的结果是表达式2的结果,否则执行表达式3,运算式的结果是表达式3的结果

     

     跟

     if(表达式1){

         表达式2;

     }else{

     

        表达式3;

     }

     

    用一个口水化来表达三目表达式:

         表达式1 ? 表达式2 : 表达式3;

     

    表达式1成立吗?成立执行表达式2,否则执行表达式3

    tips:代码例子如下

    #include <stdio.h>

     

    int main(int argc, const char * argv[]) {

        //    int res = 1 ? 10 : 20;

        //    printf("res=%d ",res);//10

       

        //    int res = 0 ? 10 : 20;

        //    printf("res=%d ",res);//20

       

        //三目表达式和if-else语句可以互换

        /*

         //    int num1=10,num2=20,num3=30;

         //    int res = num1 ? num1+num2 : num1+num3;

         //    printf("res=%d ",res);//30

        

         //    int num1=10,num2=20,num3=30;

         //    int res = 0;

         //

         //    if(num1){

         //        res = num1 + num2;

         //    }else{

         //        res = num1 + num3;

         //    }

         //    printf("res=%d ",res);//30

         */

       

        //注意后++的问题

        /*

         int num1=10,num2=20;

         int res = num1 > num2 ? num1++ : num2++;

         printf("num1=%d  num2=%d   res=%d ",num1,num2,res);//10 21 20

        

         //    int num1= 10;

         //    int num2 = num1++;

         //

         //    printf("num1=%d  num2=%d ",num1,num2);//11 10

         */

       

        return 0;

    }

    不忘初心,方得始终
  • 相关阅读:
    python 字符串中的%s与format
    python中的virtualenv是干嘛的?
    grep 与 find 简单命令
    git merge 和 git rebase的区别
    git stash的用法
    git push的用法
    git pull与git fetch的区别
    辟谣平台 踩坑记(一)
    微信JS-SDK开发 入门指南
    linux 写U盘出现的问题
  • 原文地址:https://www.cnblogs.com/jialiangliang/p/5990581.html
Copyright © 2011-2022 走看看