逍遥自在学C语言 | 位运算符~的高级用法
2023/4/14 1:22:08
本文主要是介绍逍遥自在学C语言 | 位运算符~的高级用法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言
在上一篇文章中,我们介绍了^
运算符的高级用法,本篇文章,我们将介绍~
运算符的一些高级用法。
一、人物简介
- 第一位闪亮登场,有请今后会一直教我们C语言的老师 —— 自在。
- 第二位上场的是和我们一起学习的小白程序猿 —— 逍遥。
二、相反数
- 我们可以利用负数的补码性质,来获得一个
正数
的相反数
#include <stdio.h> int main() { int a = 18; printf("相反数为%d\n", ~a + 1 ); return 0; }
- 运行结果
三、替换加法
- 利用相反数的规则,我们可以替换掉加法运算中的加号
a + b = a-(-b) = a - (~b+1)
- 最终得到
a + b = a - ~b - 1
#include <stdio.h> int main() { int a = 23; int b = 7; printf("a + b = %d\n", a - ~b - 1 ); return 0; }
- 运行结果
四、替换减法
- 同样的减法也可以利用相反数的规则
a - b = a +(~b+1) = a + ~b + 1
#include <stdio.h> int main() { int a = 23; int b = 7; printf("a - b = %d\n", a + ~b + 1 ); return 0; }
- 运行结果
小结
通过这篇文章,我们学会了用位运算符~
的3种高级用法
1、求一个整数的相反数
2、用~替代加法运算
3、用~替代减法运算
在下一篇文章中,我们将介绍位运算符<<
的一些高级用法。
📢欢迎各位 👍点赞 ⭐收藏 📝评论,如有错误请留言指正,非常感谢!
这篇关于逍遥自在学C语言 | 位运算符~的高级用法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15在使用平台私钥进行解密时提示 "私钥解密失败" 错误信息是什么原因?-icode9专业技术文章分享
- 2024-11-15Layui框架有哪些方式引入?-icode9专业技术文章分享
- 2024-11-15Layui框架中有哪些减少对全局环境的污染方法?-icode9专业技术文章分享
- 2024-11-15laydate怎么关闭自动的日期格式校验功能?-icode9专业技术文章分享
- 2024-11-15laydate怎么取消初始日期校验?-icode9专业技术文章分享
- 2024-11-15SendGrid 的邮件发送时,怎么设置回复邮箱?-icode9专业技术文章分享
- 2024-11-15使用 SendGrid API 发送邮件后获取到唯一的请求 ID?-icode9专业技术文章分享
- 2024-11-15mailgun 发送邮件 tags标签最多有多少个?-icode9专业技术文章分享
- 2024-11-15mailgun 发送邮件 怎么批量发送给多个人?-icode9专业技术文章分享
- 2024-11-15如何搭建web开发环境并实现 web项目在浏览器中访问?-icode9专业技术文章分享