所以我知道signed int
和unsigned int
之间的区别是用一个位来表示数字是正数还是负数,但是这如何适用于char
呢?一个角色怎么可能是正面的,也可能是负面的?
所以我知道signed int
和unsigned int
之间的区别是用一个位来表示数字是正数还是负数,但是这如何适用于char
呢?一个角色怎么可能是正面的,也可能是负面的?
C语言中没有专用的"字符类型".char
是整数类型,与int
、short
和其他整数类型相同(就此而言).char
正好是最小的整数类型.因此,就像任何其他整数类型一样,它可以是有符号的,也可以是无符号的.
诚然(顾名思义)char
主要用于表示字符.但是C中的字符是用整数"代码"来表示的,所以使用整数类型char
来实现这一目的并不奇怪.
char
和其他整数类型之间唯一的一般区别是,普通的char
不是signed char
的同义词,而对于其他整数类型,signed
修饰符是可选的/隐含的.