c语言里的按位或是怎么算的?

2024-11-17 20:50:01
推荐回答(1个)
回答1:

有一个常识需求了解一下。整型数在内存中是以补码形式表示的,如下式:
15 = 00001111
-9 = 11110111‬
-----------------------------
11111111 = (-1)
|是把15和-9两个补码按位作“或”运算,结果是一个全1的数(也是补码形式),从补码知识就知道这个数是-1