取反!和按位取反~的区别[通俗易懂]

取反!和按位取反~的区别[通俗易懂]按位取反“~”:按位取反1变0,0变1逻辑非“!”:逻辑取反,false变true,true变false,在C中,只要不是0就是真——————————————————————————————————————————

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

http://blog.csdn.net/pipisorry/article/details/36517411

按位取反“~”:按位取反1变0,0变1

逻辑非“!”:逻辑取反, false变true,true变false,在C中,只要不是0就是真

——————————————————————————————————————————

所以


!5值是0


~按位取反


5二进制00000101,取反11111010,代表-6


所以~5值-6




~是按位取反,例如整数3,二进制形式是


00000000000000000000000000000011,按位取反后就是


11111111111111111111111111111100




!是逻辑否,一个非0数取否之后就是0,上面的3,用!之后就是0

所有的不是0的数用!操作后都是0

只有当操作数等于0xFFFFFFFF的,用!和~的结果值才是一样的


所有正整数的按位取反是其本身+1的负数

所有负整数的按位取反是其本身+1的绝对值

零的按位取反是 -1


ref:

http://blog.csdn.net/pipisorry/article/details/36517411

http://blog.csdn.net/xiexievv/article/details/8124108

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170461.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • random.nextInt()的值重复

    random.nextInt()的值重复1、当random.netInt(数字)中数字小的时候,比较容易重复。这个随机是有规律的。2、可以用math.random()替代具体使用如下:如果是个位数intaa=(int)(Math.random()*11);如果是多位,doubledd=Math.random();  dd加上0和点总共19位。可以用long转一下…

    2022年7月21日
    16
  • 朱晔和你聊Spring系列S1E8:凑活着用的Spring Cloud(含一个实际业务贯穿所有组件的完整例子)…[通俗易懂]

    朱晔和你聊Spring系列S1E8:凑活着用的Spring Cloud(含一个实际业务贯穿所有组件的完整例子)…[通俗易懂]朱晔和你聊Spring系列S1E8:凑活着用的Spring Cloud(含一个实际业务贯穿所有组件的完整例子)…

    2022年4月20日
    40
  • RNN详解、BPTT、LSTM

    RNN详解、BPTT、LSTM本文部分参考和摘录了以下文…

    2022年6月23日
    25
  • 小白菜飘过计算机三级数据库[通俗易懂]

    小白菜飘过计算机三级数据库[通俗易懂]害,是真的没学啥没东西写了买书呜呜47大题归纳填空题46大题好久没更新了,害,把之前的三级数据库笔记录下来吧(强行刷存在感)计算机三级数据库也及格分佛佛的过了,虽然没学过但是机械刷题找规律还是勉强混过去了之前和朋友一起考感觉三级数据库的资料好少我还想说好好总结一波,刚考完还是很新鲜的但是不晓得能不能过…就没记录最新鲜的想法…等到出成绩我也忘得干干净净了…最近超级能逼逼叨,没想到写个CSDN…

    2022年6月18日
    43
  • Java读取文件的四种方式

    Java读取文件的四种方式 按字节读取文件内容 按字符读取文件内容 按行读取文件内容 随机读取文件内容    publicclassReadFromFile{/***以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。*/publicstaticvoidreadFileByBytes(StringfileN…

    2022年7月26日
    7
  • linux系统移植的一般过程_内核移植的基本步骤

    linux系统移植的一般过程_内核移植的基本步骤在众多嵌入式操作系统中,Linux目前发展最快、应用最为广泛。性能优良、源码开放的Linux具有体积小、内核可裁减、网络功能完善、可移植性强等诸多优点,非常适合作为嵌入式操作系统。一个最基本的Linux操作系统应该包括:引导程序、内核与根文件系统三部分。  嵌入式Linux系统移植主要由四大部分组成:  一、搭建交叉开发环境  二、bootloader的选择和移植  三、kernel的配置、编译、…

    2022年9月25日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号