当前位置:
首页 >
C++符号优先级
发布时间:2023/12/19
50
豆豆
优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。 相同优先级中,按结合顺序计算。大多数运算是从左至右计算,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。 基本的优先级需要记住: 指针最优>单目运算>双目运算(如正负号) 先乘除(模),后加减。 先算术运算,后移位运算,最后位运算。请特别注意:1 << 3 + 2 & 7等价于 (1 << (3 + 2))&7. 逻辑运算最后计算。 printf计算参数时是从右往左压栈的。 单目运算符: 运算所需变量为一个的运算符叫单目运算符,又叫一元运算符. 逻辑非运算符【!】、按位取反运算符【~】、自增自减运算符【++, --】、负号运算符【-】、类型转换运算符【(类型)】、指针运算符和取地址运算符【*和&】、长度运算符【sizeof】 运算所需变量为两个的运算符叫做双目运算符,例如+,-,*,/,%,<,>,>=,<=,==,!=,<<,>>,&,^,|,&&,||,= 运算所需变量为三个的运算符叫做三目运算符,只有条件表达式【?:】 eg1: int a = 4;
//a += (a++);//输出9
//a += (++a);//输出10
//(a++) += a;//错误,表达式必须为可修改的左值
//(++a) += a;//输出10
(++a) += (a++);//输出11
cout << a<<endl;
转载于:https://www.cnblogs.com/jx-yangbo/p/4864975.html
总结
- 上一篇: 有关离别的唯美句子181个
- 下一篇: C++动态数组简单的模拟二元堆