【发布时间】:2014-07-06 05:15:34
【问题描述】:
我正在使用 C 语言从两个目录打印文件。这是我的代码:
char *list1[30], *list2[30];
int i=0, x=0;
struct dirent *ent, *ent1;
/* print all the files and directories within directory */
while ((ent = readdir (dirSource)) != NULL) {
list1[i] = ent->d_name;
i++;
}
i=0;
while((ent1 = readdir (dirDest)) != NULL) {
list2[i] = ent1->d_name;
i++;
}
while(x != i){
printf("Daemon - %s\n", list1[x]);
printf("Daemon1 - %s\n", list2[x]);
x++;
}
我可以打印所有文件,但是每次打印目录中的文件,最终结果是这样的:
守护进程 - . 守护进程1 - . 守护进程 - .. 守护进程1 - .. 守护进程 - fich5 守护进程1 - fich4 守护进程 - fich3 Daemon1 - fich3
我不明白为什么开头有点。 Obs.:我不关心,但我在笔上使用 Ubuntu 14.04,这意味着每次我使用 Ubuntu 时,我都会使用试用版而不是在我的电脑上使用双启动。
【问题讨论】:
-
这些指针是否有效?
标签: c directory printf readdir