C++的运算符和优先级
时间: 2023-09-21 12:14:08 浏览: 62
C语言中常见的运算符包括算术运算符、关系运算符、逻辑运算符、位运算符等。下面是一些常见的C运算符及其优先级(从高到低):
1. 括号分组:()
2. 数组下标:[]
3. 结构体成员访问:.
4. 指针成员访问:->
5. 递增/递减运算符:++,--
6. 强制类型转换:(type)
7. 算术运算符:+,-,*,/,%
8. 关系运算符:>,<,>=,<=,==,!=
9. 逻辑运算符:&&,||
10. 条件运算符:? :
11. 赋值运算符:=,+=,-=,*=,/=,%=
12. 位运算符:&,|,^,~,<<,>>
13. 逗号运算符:,
需要注意的是,优先级高的运算符会先于优先级低的运算符进行计算。在表达式中可以使用括号来改变运算符的优先级。
这只是C语言中一些常见的运算符及其优先级,具体使用时还需根据实际情况进行判断和使用。
相关问题
C++运算符的优先级
C++中运算符的优先级从高到低依次为:
1. () [] -> . // 作用域、函数调用、下标、成员访问
2. ! ~ ++ -- + - * & sizeof new delete // 一元运算符
3. .* ->* // 指针成员访问
4. * / % // 乘、除、取模
5. + - // 加、减
6. << >> // 左移、右移
7. < <= > >= // 关系运算符
8. == != // 相等性运算符
9. & // 按位与
10. ^ // 按位异或
11. | // 按位或
12. && // 逻辑与
13. || // 逻辑或
14. ?: // 条件运算符
15. = += -= *= /= %= &= ^= |= <<= >>= // 赋值运算符
c++ 运算符优先级
在C语言中,运算符有不同的优先级。根据引用和引用的信息,C语言中运算符的优先级从高到低分为以下几个等级:
一级:括号()、[]、对象选择->、.
二级:!非、强制类型转换(int)、自增自减–、取值*、取址&、取反-、取长度sizeof()
三级:算术运算符——乘除余% 加减
四级:左移<<、右移>>运算符
五级:比较运算符:>、>=、<、<=、==
六级:普通逻辑运算符(双目运算符):&、|、&&、||
七级:三目运算符:?:
八级:赋值运算符=;(/=,*=,%=, =,-=)
九级:逗号运算符。
此外,根据引用的信息,还有一些操作符是从左向右结合的,包括函数调用、数组下标、取成员、类型转换、后置运算符等。
综上所述,这些是C语言中运算符的优先级和结合性规则。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [C++运算符的优先级](https://blog.csdn.net/ITJAVAtao/article/details/120597987)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [c++运算符优先级归纳](https://blog.csdn.net/zhaominyong/article/details/126268983)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]