gpt4 book ai didi

逍遥自在学C语言|位运算符的基础用法

转载 作者:我是一只小鸟 更新时间:2023-04-08 14:31:38 33 4
gpt4 key购买 nike

前言

1、人物简介

  • 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。

  • 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。

2、构成和表达方式

  • 位运算符是一组用于在二进制数之间进行操作的运算符
运算符 名称 示例
& 位与 a && b
| 位或 a | b
^ 位异或 a ^ b
~ 位取反 ~a
<< 二进制左移 a << 2
>> 二进制右移 a >> 2

3、位运算符的应用

1、位与运算符 (&)

  • 位与运算符用符号 & 表示.

  • 如果两个操作数的对应位都为1,则位与运算的结果为1,否则结果为0 。

  • 示例代码 。

                        
                          #include <stdio.h>

int main() {
  int a = 13; //二进制表示为0b1101
  int b = 11; //二进制表示为0b1011
  int c = a & b;
  printf("%d\n", c); //输出结果为9,二进制表示为0b1001
  return 0;
}

                        
                      

2、位或运算符 (|)

  • 位或运算符用符号 | 表示.

  • 如果两个操作数的对应位中至少有一个为1,则位或运算的结果为1,否则结果为0.

  • 示例代码 。

                        
                          #include <stdio.h>

int main() {
  int a = 13; //二进制表示为0b1101
  int b = 11; //二进制表示为0b1011
  int c = a | b;
  printf("%d\n", c); //输出结果为15,二进制表示为0b1111
  return 0;
}

                        
                      

3、位异或运算符 (^)

  • 位异或运算符用符号 ^ 表示 。

  • 如果两个操作数的对应位不同,则位异或运算的结果为1,否则结果为0 。

  • 示例代码 。

                        
                          #include <stdio.h>
int main() {
  int a = 13; //二进制表示为0b1101
  int b = 11; //二进制表示为0b1011
  int c = a ^ b;
  printf("%d\n", c); //输出结果为6,二进制表示为0b0110
  return 0;
}

                        
                      

4、位取反运算符 (~)

  • 位取反运算符用符号 ~ 表示 。

  • 它会对操作数的每个二进制位取反,即0变成1,1变成0 。

  • 示例代码 。

                        
                          #include <stdio.h>

int main() {
  int a = 13; //二进制表示为0b1101
  int b = ~a;
  printf("%d\n", b); //输出结果为-14,二进制表示为0b11111111111111111111111111110010
  return 0;
}

                        
                      

5、左移运算符 (<<)

  • 左移运算符用符号 << 表示 。

  • 它将操作数的所有二进制位向左移动指定的位数,并在低位填充0 。

  • 示例代码 。

                        
                          #include <stdio.h>

int main() {
  int a = 13; //二进制表示为0b1101
  int b = a << 2;
  printf("%d\n", b); //输出结果为52,二进制表示为0b110100
  return 0;
}

                        
                      

6、右移运算符 (>>)

  • 右移运算符用符号 >> 表示.

  • 它将操作数的所有二进制位向右移动指定的位数,并在高位填充0或1(具体取决于操作数的符号) 。

  • 示例代码 。

                        
                          #include <stdio.h>

int main() {
  int a = 13; //二进制表示为0b1101
  int b = a >> 2;
  printf("%d\n", b); //输出结果为3,二进制表示为0b0011
  return 0;
}

                        
                      

小结

通过本文的讲解,我们学会了6种位运算符的基础用法,在接下来的文章中,将会继续介绍这6种位运算符的高级用法.

最后此篇关于逍遥自在学C语言|位运算符的基础用法的文章就讲到这里了,如果你想了解更多关于逍遥自在学C语言|位运算符的基础用法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com