是否可以在C中重复使用opendir?
我正在尝试在C中进行调试,我很好奇,如果可以反复调用opendir()而不必先调用closedir(),因为我试图在调用while循环时运行循环来打开子目录readdir()遇到它们。 我假设关闭当前目录会导致我无法读取它。
您可以重复使用opendir()
。 只需保留你的DIR *
并在完成每个DIR *
调用closedir()
。
是的,你可以做多个opendir()调用。 警惕符号链接循环,这可能导致您进入无限循环并消耗所有可用内存。
你必须小心不要泄漏你正在收集的DIR*
,但只要你没有达到文件描述符限制,你就不应该同时打开多个opendir()
。