0x800x是c语言中十六进制表示法。0x80等于十进制的128
0x80在计算机内部显示为1000 0000
字符在计算机中由其ASCII代码表示,长度为1字节,有符号字符类型的数量
值的范围为- 128到127,无符号字符型计数值的范围为0到255。 因此,在涡轮c语言中,
字符数据在操作时按整数进行处理,如果变量定义为char,则表示该变量
是有符号的。 也就是说,它将转换为有符号整数。
turbo c规定,ASCII代码值大于0x80的字符将被视为负数。 例如ASCII值
0x8c字符,如果定义为char,则转换为十六进制整数0xff8c。 这是理由
如果ASCII码的值大于0x80,则该字节的最高有效位是1,计算机将该数字识别为负数
以0x8c表示的数字实际上是-74(8c的各位反加1,-74转换为2字节的整数)
在计算机上显示时为0 xff8c (对0074的各位反加1 )。 因此,只有定义
只有在unsigned char0x8c转换为整数时才是8c。 这正在处理大于0x80的ASCII代码
文字的情况(例如汉字代码)请特别注意。 一般汉字被定义为unsigned char