条件表达式 x=<表达式1>?<表达式2>:<表达式3>
来源:互联网 发布:淘宝收货时间延长 编辑:程序博客网 时间:2024/06/08 11:44
条件表达式 x=<表达式1>?<表达式2>:<表达式3>
其意义是:先求解表达式1,若为非0(真),则求解表达式2,将表达式2的值赋给x。若为0(假),则求解表达式3,将表达式3的值赋给x。
今天写程序用到条件表达式,自己是这样写的
int x = 5;
int y = 7;
x = x + (y==7)?1:0;
自己的想写的语句是:y==7的话,x自身加1;y!=7时,x自身加0.
那么到底x = x + (y==7)?1:0;是否正确呢?
答案是不正确。
那么分析x = x + (y==7)?1:0;
x=<表达式1>?<表达式2>:<表达式3>
x + (y==7) 相当于表达式1
1 相当于表达式2
0相当于表达式3
所以 x恒等于1.
那么争取的写法如下:x = x +( (y==7)?1:0);加一对括号,此括号作用很大啊!
虽然知识点小,但是有必要记下,防止再次出错。
0 0
- 条件表达式 x=<表达式1>?<表达式2>:<表达式3>
- 条件表达式
- 条件表达式
- 条件表达式
- 条件表达式
- 条件表达式
- 条件表达式
- 条件表达式
- 条件表达式
- x&(x-1) 表达式
- 表达式
- 表达式
- 表达式
- 表达式
- 表达式
- 表达式
- 表达式
- 表达式
- 解决debian下开机慢(DHCPDISCOVER on eth0)
- DllMain中不当操作导致死锁问题的分析--导致DllMain中死锁的关键隐藏因子
- 加快页面加载速度的解决方案-asp.net使用httphandler打包多CSS或JS文件
- mysql怎样配置ODBC数据源
- c++模板类 .
- 条件表达式 x=<表达式1>?<表达式2>:<表达式3>
- Java(Android)设计模式-单例模式
- C函数调用机制及栈帧指针
- Angular JS 复写 html5 required
- hdu4287 水题
- Android 入门 - 定制ROM(HelloAndroid)
- C语言结构体分配内存问题
- DllMain中不当操作导致死锁问题的分析--导致DllMain中死锁的关键隐藏因子2
- Android Camera相关及zxing扫码