char 和unsigned char如何相互转换

andy0618 2008-03-31 10:32:05
char 和unsigned char如何相互转换
...全文
409 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
paidfighting 2008-03-31
  • 打赏
  • 举报
回复
直接赋
xax100000 2008-03-31
  • 打赏
  • 举报
回复

int main()
{
char a; /*范围是 -128 ~ 127*/
unsigned char b; /*范围是 0-255 */
a = -2;
b = a; /*char 转化为 unsigned char。 */
cout<<(int)(a)<<' '<<(int)(b)<<endl; /**/

a = 129;
b = a;
cout<<(int)(a)<<' '<<(int)(b)<<endl;
return 0;
}


能说明白你的问题吗?
andy0618 2008-03-31
  • 打赏
  • 举报
回复
举个例子啊,谢谢
DonyUnx 2008-03-31
  • 打赏
  • 举报
回复
直接赋值不可以吗
Supper_Jerry 2008-03-31
  • 打赏
  • 举报
回复
如果不超过范围,直接强制类型转换就可以。
ouyh12345 2008-03-31
  • 打赏
  • 举报
回复
memcpy
  • 打赏
  • 举报
回复
那还不如一开始就用unsigned char
晨星 2008-03-31
  • 打赏
  • 举报
回复
char c1 = 'A';
unsigned char c2 = static_cast<unsigned char>(c1);

unsigned char c3 = 'B';
char c4 = static_cast<char>(c3);


如果不是0~127之间的,还是自己用if语句手工定义转换规则吧。
晨星 2008-03-31
  • 打赏
  • 举报
回复
static_cast
liveforme 2008-03-31
  • 打赏
  • 举报
回复
注意越界
gl0312 2008-03-31
  • 打赏
  • 举报
回复
5楼输出结果是: -2 254
-127 129

64,282

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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