unsigned char 和 signed char 区别

 我来答
刺任芹O
2022-11-16 · TA获得超过6.2万个赞
知道顶级答主
回答量:38.7万
采纳率:99%
帮助的人:9007万
展开全部

在C/C++中char型等价于整型数据,占一个字节,8个比特位。在语言中默认的就是signed char ,其范围

对应整数-128~+127,而unsigned char代表的是无符号的字符型,对应的整数范围为0~255.
例如:

#include<iostream>
using namespace std;

int main()
{
char ch='a';

cout<<(int)ch<<endl;
return 0;

}

输出的就是97,即小写字母a,对应的十进制数为97,A对应为65。

扩展资料

C++中,有3种不同的字符类型: 
char 

signed char 

unsigned char

如果用于文本,则使用未加限定的char, 类似于 'a', '0', 'abcde' 等。它也可以是一个值,但是是当做无符号还是有符号数没有指定。

如果将字符类型用作数字,那么:

signed char, 范围至少为 [-127 ~ 127] 。 (一般范围是 -128 到 127) 
unsigned char, 范围至少为 [0 ~ 255]。

说“至少”是因为C++标准只指定了对应每一种数据类型值的最小覆盖范围。

如果真的要表示小的整数的话,最好使用 int8_t 和 uint8_t 。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式