怎样将 char * 里的内容赋给 char [] ?

Messagebus 2006-04-14 01:16:30
请各位高人予以点拨。
...全文
425 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
knight_yaya 2006-04-19
  • 打赏
  • 举报
回复
我觉得是不是在为那个指针变量分配内存空间的时候出了问题目,或者是根本没有为它分配内存空间????
参考一下……
Ninstein 2006-04-16
  • 打赏
  • 举报
回复
出现非法信息可能是你的字符串没结束标记
Duwchy 2006-04-16
  • 打赏
  • 举报
回复
memcpy(buf,const void *src,size) 中 size 需是那个结构类型的大小
IhaveGotYou 2006-04-16
  • 打赏
  • 举报
回复
>>既然在const void *src位置可以直接用结构指针但为什么还是依然报同样的错呀
那就要看你是怎么写的了.
Messagebus 2006-04-14
  • 打赏
  • 举报
回复
memcpy(buf,const void *src,size)里的size用的是1024,既然在const void *src位置可以直接用结构指针但为什么还是依然报同样的错呀?盼高手继续指点。
逸学堂 2006-04-14
  • 打赏
  • 举报
回复
memcpy // 是直接内存拷贝,可以拷贝int,char,float,struct等
strcpy // 只能拷贝字符串。
Messagebus 2006-04-14
  • 打赏
  • 举报
回复
前面定义了 Buf [1024];
难道是memcpy(buf,const void *src,size)里的const void *src必须是const类型吗?我现在const void *src位置是用的一个结构指针。

ChenSu2008 2006-04-14
  • 打赏
  • 举报
回复
内存的拷贝要保证是对合法区域的访问
你设定的大小有问题,访问了不该访问的内存。
编译的时候不检查,运行的时候就不行了
这些问题,你要手动去检查的
hazuki9902 2006-04-14
  • 打赏
  • 举报
回复
弱弱的问一句:
memcpy和strcpy哪个效率会更高?如果string较长的话
谢谢
Messagebus 2006-04-14
  • 打赏
  • 举报
回复
感谢大家的帮助。为什么我照上面的写了,编译没有问题在运行的时候会出现“0x00403757”指令引用的"0x000000054"内存,该内存不能为"read"。调试显示是Access Violation
sankt 2006-04-14
  • 打赏
  • 举报
回复
strcpy
memcpy
yesbi 2006-04-14
  • 打赏
  • 举报
回复
char *ptr;
char a[]="hello world";
ptr=a;
for (i=0;i<20;i++)
{
*ptr=a[i];
ptr++;
}
yuanchuang 2006-04-14
  • 打赏
  • 举报
回复
void *memcpy( void *dest, const void *src, size_t count );
ChenSu2008 2006-04-14
  • 打赏
  • 举报
回复
char ac[10] ;
char *pc = "hello";
strcpy(ac, pc);
jinjiajie 2006-04-14
  • 打赏
  • 举报
回复
内存拷贝

69,373

社区成员

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

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