star-and-me

基本的运算符和作用:

    1:&按位与 &0置0

    2:|按位 或 |1置1

    3:^异或  *^1取反    *交换   a^=b;b^=a;a^=b;

    4: >> 移位运算符 *2或/2     a/(2^n)==a>>n

    5:~  取反

 

稍高级的应用:

//1:取第k(0,1,2,3,4,5...) 位
    int a=10;
    cout<<(a>>3&1)<<endl;
// 判断a的奇偶性  a%2  等价于  a&1   
    int a=10;
    a&1  最后一位是1 为奇  是0为偶
//2:将第k位  置0
    int a=10;
    a=~(1<<(k-1)) &a; //第k位是0其余位都是1&  
// 将第k位  置1
    int a=10;
    a=(1<<(k-1))|a; 
//将a循环左移k位
    int a=10;
    int k=1;
    a=(a<<k)|(a>>(sizeof(int)-k));
    //把最后一位置1 a|1
    //把最后一位置0 a|1-1
    //后面连续的1  (1<<k-1)

  

分类:

技术点:

相关文章:

  • 2021-08-13
  • 2021-11-14
  • 2021-08-06
  • 2021-12-29
  • 2021-12-05
  • 2021-12-05
猜你喜欢
  • 2021-08-06
  • 2019-10-25
  • 2021-12-02
  • 2019-07-01
  • 2021-11-14
  • 2021-08-06
  • 2021-11-28
相关资源
相似解决方案