大众信息网

C++问题,数组如何用MEMCPY拷贝到新开的内存区域,谢谢

答案:3  mip版
解决时间 2021-01-17 12:13
  • 提问者网友:1朵凋残的╮小花
  • 2021-01-16 18:46
char *pchBuf3 = NULL;
pchBuf3 = (char*) malloc(512*512*3);//rows*cols*3colors
然后
memcpy(pchBuf3 + i * sizeof(cc),cc,sizeof(cc));这样好像是不能把CC的内容复制到pchBuf3里的,谁帮看看谢谢
最佳答案
  • 二级知识专家网友:嘴硬欠吻
  • 2021-01-16 18:56
这是把cc复制到pchBuf3的第i行。
全部回答
  • 1楼网友:嶒經忲氾濫
  • 2021-01-16 20:59
assign是stl里的string字符串的拷贝 strcpy,拷贝的时候会把结束符\0,一起拷贝 memcpy 是内存拷贝,拷贝的时候,不会拷贝结束符\0,所以使用memcpy的时候,一定要先初始化,而且memcpy拷贝的时候,需要指定长度。
  • 2楼网友:全球变暖丶我心却变冷
  • 2021-01-16 20:21
不知道cc的定义。 我猜要写成: memcpy(pchBuf3 + i * sizeof(cc), &cc, sizeof(cc)); memcpy前2个参数都应该是地址。
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
点此我要举报以上问答信息
推荐资讯