前言:
位运算符是用来对二进制位进行操作的
c语言中有6种位运算符:
& 按位与 [链接]: https://blog.csdn.net/weixin_42837024/article/details/98736834
| 按位或 [链接]:https://blog.csdn.net/weixin_42837024/article/details/98745019
^ 按位异或 [链接]:https://blog.csdn.net/weixin_42837024/article/details/98745896
~ 取反 [链接]:https://blog.csdn.net/weixin_42837024/article/details/98748472
<< 左移 [链接]:https://blog.csdn.net/weixin_42837024/article/details/98734787
>> 右移 [链接]:https://blog.csdn.net/weixin_42837024/article/details/98734787
本篇文章我们只讲左移和右移运算符,其他的会陆续在其他篇讲述
左移:
右移:
总结:
code:
#include <iostream>
int main()
{
auto i = 11; //2进制: 1011 ,10进制:11
i = i << 1; //左移1位
std::cout << i; //2进制: 10110 ,10进制:22
i = i << 1; //继续左移1位
std::cout << i; //2进制: 101100 ,10进制:44
auto i2 = 11;
i2 = i2 >> 1; //右移
std::cout << i2; //2进制: 101 ,10进制:5
i2 = i2 >> 1; //继续右移一位
std::cout << i2; //2进制: 10 , 10进制:2
system("pause");
}