【发布时间】:2014-02-28 09:05:06
【问题描述】:
我在我的代码中使用 memcpy 函数并在运行它时出现分段错误错误。下面是代码。
memcpy ((void *) ((unsigned int) core_data + (width * height * bpp)), (void *) core_data, (width * height * bpp));
core_data 是 unsigned short 指针,高度、宽度和 bpp 是 static int 类型。 (width * height * bpp) 的值为8355840。当我减小这个值时,比如 10,错误就解决了。但在实际情况下,我必须将值保持为 8355840。 有什么解决办法吗?
谢谢
【问题讨论】:
-
在复制到
core_data之前,您是否已将内存分配给core_data,或者至少将其初始化为指向已分配的内存? -
请问
bpp是什么类型? -
为什么要投到
(unsigned int)? -
@alk,不,我没有为 core_data 分配任何内存!
-
bpp 是静态 int 类型
标签: c segmentation-fault memcpy