自减自增和逗号的优先级
来源:互联网 发布:淘宝动漫周边店 编辑:程序博客网 时间:2024/06/05 10:46
自减自增和逗号的优先级
✿问题引入✿
今天突然想起一种写法n = 10; printf("%d %d\n", n, n--);
最后输出的竟然是9 10
,感觉很惊讶,于是又多试了几组,代码如下:
#include <cstdio>using namespace std;int main() { int n = 10; printf("%d %d %d %d %d %d %d %d\n", n, n--, n--, n, n, n--, n--, n); return 0;}
输出就更惊艳了,是6 7 8 6 6 9 10 6
,因此我就仔细查了优先级,大致发现了其中的缘由。
✿原因分析✿
首先自减和自增(也就是n++
或--n
)的优先级比逗号高,逗号是符号中优先级最低的。又因为自减和自增从右到左结合,所以输出的正确顺序就是先把自减全部执行完,而且还是从右到左结合,所以10就变成9 8 7 6,最后再输出内容,就变成了6 7 8 6 6 9 10 6
Reference:运算符优先级
阅读全文
0 0
- 自减自增和逗号的优先级
- 自增自减,逗号运算符
- 自加自减的优先级
- 逗号表达式,自增
- 自加、自减运算符和逗号运算符
- 第五章 表达式(part2) 自增和自减、箭头、条件、sizeof 、逗号 操作符
- 关于指针和自增运算符的优先级
- 自增和自减的坑
- 自增“++”和自减“--”
- 自增和自减
- 补.从零开始学习C语言--运算符补充(自增/自减、三目、逗号)
- C#的自增和自减操作符
- Java 自增“--”和自减“--”运算符的用法
- 对自增和自减运算符的提醒
- 自增、自减运算符的前缀和后缀
- 自增(++)和自减(--)的解析
- java语言的自增++和自减--
- C语言自增自减 比较运算符 逻辑运算符的使用 运算符的优先级
- 中止僵死的expdp任务
- 枚举——最佳生理周期
- Mysql的架构和历史(二)
- 训练总结 8.11
- 【C++】【LeetCode】102. Binary Tree Level Order Traversal
- 自减自增和逗号的优先级
- 反射与代理
- MySQL——Schema与数据类型优化(一)
- 集训8.11
- windows batch脚本中嵌入python程序
- 算法十五
- 自定义View
- DrawerLayout和actionBar实现网易新闻标题,包含点击图标登录qq
- 面试题-java泛型擦除