C语言基础 — 运算符


1、运算符

1.1 易错运算符

  1. ++,-- 注意区分前置和后置
int i = 10;
int j = ++i;  // 执行此语句之后,j=11,i=11
i = 10;
int k = i++;  // 执行此语句之后,i=11,k=10
  1. ‘/’ 整除,注意整除问题,即整数除以整数结果为整数,舍弃末尾的小数;不能除0

  2. << 按位左移,右边统一补0
    在这里插入图片描述

  3. >> 按位右移,如果是有符号数左边补符号位,如果是无符号数左边补0
    在这里插入图片描述

  4. <, > 小于,大于符号,注意不能连续比较

1.2 位运算符

位运算符主要是以二进制规则进行运算

1.与(&)运算符

使用规则:两个二进制操作数对应位同为1 结果位 才为1,其余情况位0:
举个简单的栗子:
整数 a = 15 整数 b = 127
计算:(a & b)
在这里插入图片描述
2.或(|)运算符
使用规则:两个二进制操作数对应位只要有一个为1 结果位 就为1,其余情况为0
举个简单的栗子:
计算:(b | c)
在这里插入图片描述

3.非(~)运算符
使用规则:一个二进制操作数,对应位为0,结果位为1;对应位为1,结果位为1;(取反)
作用是将每位二进制位取反
举个简单的栗子:
计算:整数 a = 1; 计算(~a)

【第一步】首先将数值表示成二进制形式,对其取反
在这里插入图片描述

这是内存中的保存形式。实际上,我们读取的十进制是根据 原码 来读取,而在内存中,数值都是以 二进制补码 的形式存储的。对于正数,其原码、反码、补码均相同;对于负数,其补码得到的过程:原码 —> 反码 —> 补码

【第二步】计算取反后的补码吗,其值就是结果
在这里插入图片描述

4.异或(^)运算符
使用规则:两个二进制操作数对应位相同为0,不同为1
举个简单的栗子:
计算:(e ^ f)
在这里插入图片描述

0 和 任何数 异或的结果均为 任何数


请添加图片描述


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值