请问为什么-65537在16位的内存中的值与-1在内存中的值是一样的?(程序设计c语言)

2024年11月15日 01:20
有3个网友回答
网友(1):

这主要是-65537这个数超出了16内存单元表示数的范围,所以实际存储的值(-1)与要表示的值(-65537)不同,但-65537并没有超出32内存单元表示数的范围,所以实际存储的值就是其本身。

网友(2):

16位有符号整数的赋值, 超出取值范围后会取模操作( n%32768) 。65537%32768=1 ,所以

-65537 == -1

网友(3):

………