memcpy出现段错误
时间: 2023-12-26 08:28:16 浏览: 138
linux c段错误处理
memcpy出现段错误通常是由于错误地将指针指向局部变量的内存地址导致的。可以尝试将memcpy替换为自己编写的for循环进行拷贝,看看是否还会出现错误。
以下是一个示例代码,用for循环替代memcpy进行拷贝:
```c
void my_memcpy(void *dest, const void *src, size_t n) {
char *csrc = (char *)src;
char *cdest = (char *)dest;
for (size_t i = 0; i < n; i++) {
cdest[i] = csrc[i];
}
}
```
你可以将原来的memcpy调用替换为my_memcpy进行测试,看看是否还会出现段错误。
阅读全文