-4
4

1 回答 1

1

在您的代码中,

memset (data, '\0', sizeof(data));

wheredata不指向任何有效内存,实际上调用未定义的行为。

复制(甚至读取)指针指向的内存位置之前,您需要确保指针指向为该特定进程分配的有效内存位置。

要么使用编译器分配的内存,比如

 unsigned char data[256] = {0};

或者使用malloc()or family 来获取分配给指针的内存。之后不要忘记释放它。

于 2015-11-25T07:05:03.117 回答