鱼C论坛

 找回密码
 立即注册
查看: 2143|回复: 3

[已解决]!~操作符

[复制链接]
发表于 2023-10-23 09:24:12 | 显示全部楼层    本楼为最佳答案   
!~操作符是位操作符,它的作用是对操作数进行按位取反操作。在这个表达式中,b的初始值为-25。

首先,我们来看一下~b的值。~操作符会将b的二进制表示的每一位取反,即将0变为1,将1变为0。由于b的二进制表示为11111111 11111111 11111111 11100111,取反后的结果为00000000 00000000 00000000 00011000,即24。

然后,我们来看一下b++的值。b++是后置递增操作符,它会先返回b的当前值,然后再将b的值加1。所以,b++的值为-25,然后b的值变为-24。

最后,我们来计算!~b++的值。!操作符是逻辑非操作符,它会将操作数的值转换为布尔类型,并返回其相反值。如果操作数为0,则返回true,否则返回false。在这个表达式中,~b++的值为24,因为非零值被认为是true,所以!~b++的值为false。

因此,!~b++的值为false,并且它的值为false是因为~b的结果为24。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-22 14:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表