- 位运算
- 对整数的二进制位进行的操作
- 与&,或|,异或^,取反~,左移<<,右移>>
- 优先级
- "~">算术运算>比较运算>"&">"^">"|"
- 位运算只能作用于整形数据
- 操作数可以是变量,常数或表达式
#include <iostream>
using namespace std;
int main()
{
int a=0x69;
int b=0x5E;
int c;
cout<<uppercase;//输出的十六进制中的字母为大写
cout<<dec<<a<<"\t"<<hex<<a<<endl; //dec表示以十进制格式输出
cout<<dec<<b<<"\t"<<hex<<b<<endl; //hex表示以十六进制格式输出
c=a&b; //按位"与"
cout<<dec<<c<<"\t"<<hex<<c<<endl;
c=a|b; //按位"或"
cout<<dec<<c<<"\t"<<hex<<c<<endl;
c=a^b; //按位“异或”
cout<<dec<<c<<"\t"<<hex<<c<<endl;
c=~a; //按位“取反”
cout<<dec<<c<<"\t"<<hex<<c<<endl;
c=a<<2; //左移2位
cout<<dec<<c<<"\t"<<hex<<c<<endl;
c=a>>2; //右移2位
cout<<dec<<c<<"\t"<<hex<<c<<endl;
cout<<dec; //恢复十进制输出格式
return 0;
}
结果如下: