发布网友 发布时间:2023-09-27 21:00
共1个回答
热心网友 时间:2024-03-04 00:24
(取反、左移、按位与、按位异或、按位或)优先级由高到低的顺序排列为取反 > 左移 > 按位与 > 按位异或 > 按位或。
1、~:意思是按位取反,类似于非(!)的关系,取它的反面。
2、<<: 意思是左移,移动二进制的位。
3、& : 意思是按位与,类似于与(&&)的关系,一假为假。
4、^:意思是按位异或,通俗地说就是相同为0,不同为1.
5、|:意思是按位或,类似于或(||)的关系,一真为真。
扩展资料:
在标准C语言的文档里,取反、左移、按位与、按位异或、按位或都属于双目运算符。结合方向是“自左至右”,即:先左后右,也叫“左结合性”。除了左结合性外,C 语言有三类运算符的结合方向是从右至左,也叫“右结合性”,即:单目运算符、条件运算符、以及赋值运算符。
着重强调一点,无论是左结合性,还是右结合性,是针对两个相邻的优先级相同的运行符而言(不是表达中的运算对象),运算符是决定左右的基准点,先以前面的运算符(即位置上处于左边的运算符)构造运算,就是左结合,反之,就是右结合。