关于c语言中char类型范围问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 08:41:40
c语言中char类型范围-128至127,0用00000000表示,127用10000000表示的话,-128用什么表示,
11111111不是-127吗,怎么成-1了,-1不应该是10000001吗

127用二进制表示是01111111
最前面的1是符号位 第一位是1就是负数了

在内存中,char型数据是存放的字符的ASCII码的二进制补码形式。
ASCII码为127时,内存中存的是0111 1111,ASCII码为-128时,内存中存的是1000 0000
注:对于正数,原码=反码=补码
对于负数,反码=除符号位按位取反的值,补码=反码+1

127=01111111

-128=10000000

11111111=-1

你再好好看看书,-127和-1到底是什么。

如果-1是10000001,那么10000000是什么?-0吗?

我记得负数是绝对值后取反码再+1