请问 unsigned char 是什么意思

luanjiajia 2002-05-27 09:46:44
请问 unsigned char 是什么意思
...全文
2173 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
terron 2002-05-27
  • 打赏
  • 举报
回复
up
不解 2002-05-27
  • 打赏
  • 举报
回复
同意楼上
dnyz 2002-05-27
  • 打赏
  • 举报
回复
无符号字符类型:

如果表示字符和char类型一样

如果表示整数和unsigned int一样,从0到255
sandwish2000 2002-05-27
  • 打赏
  • 举报
回复
unsigned char,无符号字符类型,取值范围是(0-255)。
benjiamen 2002-05-27
  • 打赏
  • 举报
回复
楼上的说得对。是无符号字符类型,取值范围是(0-255)。

如果不加unsigned 是字符类型,到值范围是(-128 至 127)
HostOOP 2002-05-27
  • 打赏
  • 举报
回复
unsigned char,无符号字符类型,取值范围是(0-255)。看下一个例子:
int main()
{
unsigned char i=255;

printf("%d\n",i);
printf("%d\n",++i);

return 0;
}

i加1后,值不是256,而是0
cometofly 2002-05-27
  • 打赏
  • 举报
回复
无符号字符,可以表示0——127的整数,或英文字母。
SHIZUMARU 2002-05-27
  • 打赏
  • 举报
回复
就是“无符号字符”。

在16位程序里,它是一个8位数据,8位全部用来表示值,取值范围0-255
Wilbur 2002-05-27
  • 打赏
  • 举报
回复
1. unsigned/singed在计算机内部表示是没有区别的。
2. unsigned/singed只有在使用的时候,才有意义。例如,你要表达的数据范围是0-255,那么用unsigned。
3. 要小心的是在进行移位运算的时候,unsigned/singed的结果可能不同(在c标准中,没有强制规则,所以是因编译器而变化的)。例如 0x80 >> 1

当然,还有一些比较小的区别,主要是因2和3原因导致。只要注意:
1. 一致。所有使用unsigned的地方,不要随便当做signed
2. 取值范围。
step_by_step 2002-05-27
  • 打赏
  • 举报
回复
具体的用处是在处理中文时,用得到的。
SlaSk 2002-05-27
  • 打赏
  • 举报
回复
转换为int的时候才有效.
不然都一样.
Autom 2002-05-27
  • 打赏
  • 举报
回复
up
zzkoo 2002-05-27
  • 打赏
  • 举报
回复
有什么具体的用处吗?
干脆用unsigned int或char不就完啦

69,372

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧