![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
怎样把unsigned short 转换为 unsigned char
3个回答
展开全部
char 和short 是一样的,都是1个字节,至于无符号的话,char不存在这个问题。
两者可以直接替换使用,没有问题。如果编译器有警告,则static_cast<unsigned short>(charVal),这样转化即可
两者可以直接替换使用,没有问题。如果编译器有警告,则static_cast<unsigned short>(charVal),这样转化即可
展开全部
unsigned short s;
unsigned char c;
1.直接赋值
c=s;
2.强制转换
c=(unsigned char)s;
3.C++建议用法
c = static_cast<unsigned char>(s);
//short一般占两个字节
char占一个字节
unsigned char c;
1.直接赋值
c=s;
2.强制转换
c=(unsigned char)s;
3.C++建议用法
c = static_cast<unsigned char>(s);
//short一般占两个字节
char占一个字节
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2016-12-05 · 知道合伙人数码行家
![](https://himg.bdimg.com/sys/portrait/item/public.1.79f05348.k2Z6eWZyiQKj2qkX-UAENQ.jpg)
知道合伙人数码行家
采纳数:25897
获赞数:1464979
2010年毕业于北京化工大学北方学院计算机科学与技术专业毕业,学士学位,工程电子技术行业4年从业经验。
向TA提问 私信TA
关注
![](https://wyw-base.cdn.bcebos.com/pc-content/follow.gif)
展开全部
unsigned short 转换为 unsigned char可以这样转:
unsigned short * word;
int size= WideCharToMultiByte(CP_ACP,0,word,-1, NULL, 0, NULL,0);
char * AsciiBuff =new char[size];
WideCharToMultiByte(CP_ACP,0,word,-1,AsciiBuff,size, NULL, 0);
unsigned short * word;
int size= WideCharToMultiByte(CP_ACP,0,word,-1, NULL, 0, NULL,0);
char * AsciiBuff =new char[size];
WideCharToMultiByte(CP_ACP,0,word,-1,AsciiBuff,size, NULL, 0);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询