gpt4 book ai didi

c - 目录遍历c

转载 作者:行者123 更新时间:2023-12-01 15:39:39 25 4
gpt4 key购买 nike

我正在尝试遍历目录并检查重复文件。

void findDuplicates(){
char *dot[] = {".", 0};
FTS *ftsp, *temp_ftsp;
FTSENT *entry, *temp_entry;
int fts_options = FTS_LOGICAL;
ftsp = fts_open(dot, fts_options, NULL);
while((entry = fts_read(ftsp)) != NULL){
temp_ftsp = ftsp;
while((temp_entry = fts_read(temp_ftsp)) != NULL){
compareEntries(temp_ftsp, ftsp);
}
}
}

但它并没有按照我想要的方式遍历目录。在第二个 while 循环之后,

entry = fts_read(ftsp)

返回 NULL。是否有一个简单的解决方法,或者我应该使用其他东西?

最佳答案

您需要重新构建您的方法。内部 while 正在耗尽文件列表,因此外部当然会在成功后失败一次。

更好的方法可能是存储文件,这样您就可以将每个新传入的文件与存储的文件进行比较,或者使用递归方法。两者都需要内存。

关于c - 目录遍历c,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13009358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com