0
点赞
收藏
分享

微信扫一扫

C基础语法2

闲云困兽 2024-09-20 阅读 23

C基础语法2

按位与&

  • 语法特点:和1按位与保持不变,和0按位与清0
  • 应用场景:将指定位置 0
  	int data = 127;//指定第三位第五位清0
  	//data=data&1101 0111;
    data = data & 0xd7;
    printf("%#x\n", data);

按位或|

  • 语法特点:有1为1,全0为0
  • 应用场景:将指定位置 1

按位取反~

按位取反 0变1 1变0

按位异或^

  • 基本语法:相同为0 不同为1
  • 语法特点:和0异或保持不变 和1异或取反
  • 应用场景:将置定位取反

右移左移

不同编译器的右移情况不同

	// 1000 0000 0000 0000 0000 0000 0000 0110
    // 1111 1111 1111 1111 1111 1111  1111 1001
    // 1111 1111 1111 1111 1111 1111  1111 1010
    // 算术右移补1  1111 1111 1111 1111 1111 1111 1111 1111   0xffffffff
    // 逻辑右移补0 0000 0000 0000 0000 1111 1111 1111 1111 0xffff
    int data = -10;
    data = data >> 16;
    if (data == 0xffffffff)
    {
        printf("算术右移%#x\n", data);
    }
    else if (data == 0xffff)
    {
        printf("逻辑右移%#x\n", data);
    }
    
举报

相关推荐

C++学习 <三> 基础语法(2)

JavaScript基础语法(2)

Linux 基础语法 -2

MySQL 基础语法(2)

Java基础语法2

【Java基础】2、Java基础语法

C#语法基础

0 条评论