本人C语言小白一枚,
今天在练习对结构体指针清空时,使用了memset函数后,发现出现了段错误。
现象如下
struct dirent *pDrent; memset(pDrent, 0, sizeof(struct dirent));
编译后一运行,则报出段错误
原因是因为在使用memset函数前,没有对结构体指针进行内存分配。
修改代码如下
struct dirent *pDrent; pDrent = malloc(sizeof(struct dirent)); memset(pDrent, 0, sizeof(struct dirent));



