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

取反!和按位取反~的区别[通俗易懂]按位取反“~”:按位取反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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • jdk14下载与安装教程(win10)超详细

    jdk14下载与安装教程(win10)超详细一、前言现在jdk已经升级到JDK14版本了,这里也记录一下jdk14的下载及安装过程,对于刚学习java的小伙伴可以参考,熟手可忽略,呵呵~二、下载安装步骤一、首先是去jdk官网下载,官网下载还需要注册,如果大家不怕麻烦的话可以去官网下载,下载速度也是龟速,我也是花了好长时间才下载下来,大家可以点击我的网盘目录jdk目录下载,目录也有其它低版本的,如果有需要大家根据需要自行选择。…

  • 初识AvalonDock

    初识AvalonDock前些时间由于工作原因接触了AvalonDock,从中受益匪浅,不敢独享,在此与大家共勉。AvalonDock是WPF做的一个类似VisualStudio中的拖拽功能的控件。想要根据AvalonDock开发WPF项目,首先要下载AvalonDock.dll和AvalonDock.Themes.Aero.dll。 新建WPF项目,将下载的dll文件引用到项目中,在工具箱中引用该dll

  • linux安装jdk环境(多种方式)

    linux安装jdk环境(多种方式)linux系统通用安装通过tar.gz压缩包安装此方法适用于绝大部分的linux系统1、先下载tar.gz的压缩包,这里使用官网下载。进入:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html勾选接受许可协议后选择对应的压缩包,下载完成后上传的linux…

    2022年10月28日
  • Ubuntu 定时执行脚本

    Ubuntu 定时执行脚本一、关于crontabcron是一个Linux定时执行工具,可以在无需人工干预的情况下运行作业。在Ubuntu中,cron是被默认安装并启动的。二、例子直接上例子,来看看怎么用。需求:定时每天8点,自动执行保存在/root目录下hello.sh脚本1、方法很简单,只需编辑ect下crontab文件就行了,这个文件里存放的就是cron要执行的命令,以及定时执行的时间…

  • 基于ArcGIS 二次开发 使用技巧总结

    基于ArcGIS 二次开发 使用技巧总结这两天刚忙完一个项目,趁着这几天任务轻松,抽空总结上一个项目所遇到的一些问题,都是很简单的基本操作,先列个大纲吧:一、地图的基本操作:1.工具栏的实现:包括放大、缩小、漫游、测线、测面、定位功能、比列尺、鹰眼图、动态获取所在的经纬度(传送门:https://blog.csdn.net/KK_bluebule/article/details/83414871)2.地图禁止平移,禁止放…

  • linux 解压zip文件及各种问题解决

    linux 解压zip文件及各种问题解决解压压缩包命令:unzip文件名.zip若报错:unzipcommandnotfound原因:linux中未安装unzip命令。解决:执行如下命令,下载unzip包aptinstallunzip可能再次报错:E:Unabletolocatepackageunzip解决:先执行命令apt-getupdate,该命令结束后,再执行aptinstallunzip…

发表回复

您的电子邮箱地址不会被公开。

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