C++ char unsignedchar signedchar区别
定义了函数f(char),g(char&),h(constchar&)之后,用参数'a',49,3300,c,uc,sc作为参数调用他们。其中,c是char,uc是uns...
定义了函数f(char),g(char&),h(const char&)之后,用参数'a',49,3300,c,uc,sc作为参数调用他们。其中,c是char,uc是unsignedchar,sc是signedchar。哪些调用是合法的?为什么?
我知道在电脑上试一下,结果就出来了,但是重点是为什么。我想知道原因。 展开
我知道在电脑上试一下,结果就出来了,但是重点是为什么。我想知道原因。 展开
展开全部
char 跟 signed char 完全没有区别.
定义 char 的时候事实上就是 signed char.unsigned char 跟 char才是有区别的.char 占1字节, 1字节就是8位. 对于有符号类型来说, 从左往右第1位是符号位, 0表示正数, 1表示负数.对无符号类型, 也就是用了unsigned修饰符的类型来说, 就没有符号位.因此unsigned char 没有符号位, 它的8位都可以用来表示数据, 范围是0-255.char 有一位是符号位, 只有7位来表示数据, 因为有正负之分, 所以范围是-128-127.
定义 char 的时候事实上就是 signed char.unsigned char 跟 char才是有区别的.char 占1字节, 1字节就是8位. 对于有符号类型来说, 从左往右第1位是符号位, 0表示正数, 1表示负数.对无符号类型, 也就是用了unsigned修饰符的类型来说, 就没有符号位.因此unsigned char 没有符号位, 它的8位都可以用来表示数据, 范围是0-255.char 有一位是符号位, 只有7位来表示数据, 因为有正负之分, 所以范围是-128-127.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询