结果 是多少啊?右移和取反的优先级哪个高?

来源:百度知道 编辑:UC知道 时间:2024/06/18 09:57:12
#include<iostream>
using namespace std;
int main()
{
unsigned char a=0xA5;
unsigned char b=~a>>4;
printf("b=%d\n",b);
return 0;
}

表2.16 C语言的位运算符
操作符 优先级 作用 要求运算对象的个数 结合方向



低 按位取反 1(单目) 从右到左
<<,>> 左移,右移 2(双目) 从左到右
& 按位与 2(双目) 从左到右
∧ 按位异或 2(双目) 从左到右
| 按位或 2(双目) 从左到右

~运算符的优先级别比算术运算符、关系运算符、逻辑运符和其他运算符都高。