C++中负数的运算

来源:百度知道 编辑:UC知道 时间:2024/06/08 14:05:09
有一个负数的运算使我进入了一个死角,i|=~j^j(其中i=-2,j=2),谁能给我说下是怎么算的嘛,我是一个念大三的学生

~j是按位取反,因此~j和j的各位都相反,因此~j和j做位异或操作的结果肯定是各位都为1,一个数和各位都为1的数做位或操作,结果肯定还是各位都为1,所以不管i,j取什么值,i|=~j^j的最终结果都是i=-1

这明明是C/C++ 里面很基本的 位运算 嘛

标题为什么取为“负数的运算”

tanyuguo说的很对,赞一个先