请问:如何将一个unsigned char *转换成一个const char *

VincentChin 2001-09-11 09:50:44
...全文
924 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
krerix 2001-09-17
  • 打赏
  • 举报
回复
还是lning75(soso)的方法好
rtgboy 2001-09-17
  • 打赏
  • 举报
回复
直接用p = s当然不行,我没用过g++,但vc下的我的办法能编译通过的
lning75 2001-09-12
  • 打赏
  • 举报
回复
如果你是用c编译器来编译,没问题。如果用c++编译器,例如g++,问题的根源在于在char *和unsigned char *之间的转换。用上面rtgboy的办法不能解决。下面是一个办法:

#include <stdio.h>
#include <string.h>

main()
{
unsigned char s[100];
char ss[100];
const char *p;

p = ss;
memcpy(ss, s, 100);

}

直接用p = s编译不通过。
fsb_12345 2001-09-11
  • 打赏
  • 举报
回复
up
cmpp 2001-09-11
  • 打赏
  • 举报
回复
我来学习一下!
rtgboy 2001-09-11
  • 打赏
  • 举报
回复
对于
unsigned char* a;

(const char*)a
或者
reinterpret_cast<const char*>(a)
来转换

69,369

社区成员

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

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