当前位置: 代码迷 >> 综合 >> 37.Ternary Operators 2021-04-09
  详细解决方案

37.Ternary Operators 2021-04-09

热度:18   发布时间:2023-11-16 23:27:18.0
  • 比直接写if 、else要简洁很多
  • 可以写带有判断的赋值语句
  • 并且这个语句因为有高级编译器编译,会消耗更少的内存,不会产生赋值的中间变量

 

#include <iostream>static int s_Level = 8;
static int s_Speed = 2;int main()
{/*if (s_Level > 5)s_Speed = 10;elses_Speed = 5;*///上面注释的语句等价与下面的语句:s_Speed = s_Level > 5 ?  10 : 5;printf("when the level is %d , the player's speed is:%d \n", s_Level, s_Speed);//三元运算语句的嵌套形式(一般尽量不要写嵌套形式)//当等级大于10获得15,当等级在5-10获得10。s_Speed =  s_Level > 5 ? s_Level > 10 ? 15 : 10 : 5;printf("when the level is %d , the player's speed is:%d \n", s_Level, s_Speed);
}

输出结果:

when the level is 8 , the player's speed is:10
when the level is 8 , the player's speed is:10