[英]C Segmentation Fault:11
我遇到了分段錯誤:11,當引入的參數導致使用此部分代碼時:
else
{
directoria = opendir (argv[2]);
if (directoria == NULL)
{
printf ("Não foi possível abrir a directoria '%s' ou esta não contém ficheiros.\n", argv[2]);
}
else
{
while ((ficheiro = readdir (directoria)) != NULL)
{
sprintf(guardar, "%s/%s", argv[2], ficheiro->d_name);
stat (guardar, &dados);
printf ("%7d", dados.st_size);
tempbon = dados.st_mtime;
t = localtime (&tempbon);
strftime(tempo, 80, "%b %d %H:%M", t);
printf (" %s", tempo);
printf (" %s\n", ficheiro -> d_name);
}
}
closedir (directoria);
}
我可以發布整個代碼或您認為必要的其他解釋。 我也很感謝您關心的任何意見。
我認為如果directoria
為NULL,您仍然會執行closedir (directoria);
這將取消引用空指針並導致段錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.