#include <sys/types.h>
#include <dirent.h>
#include <stdio.h>
#include <errno.h>
int main(int argc,char *argv[])
{
DIR *dp;
struct dirent *dirp;
int n=0;
if (argc!=2)
{
printf("a single argument is required\n");
return 0;
}
if((dp=opendir(argv[1]))==NULL)
printf("can't open %s",argv[1]);
while (((dirp=readdir(dp))!=NULL) && (n<=50))
{
n++;
printf("%s\n",dirp->d_name);
}
printf("\n");
closedir(dp);
return 0;
}
#include <dirent.h>
#include <stdio.h>
#include <errno.h>
int main(int argc,char *argv[])
{
DIR *dp;
struct dirent *dirp;
int n=0;
if (argc!=2)
{
printf("a single argument is required\n");
return 0;
}
if((dp=opendir(argv[1]))==NULL)
printf("can't open %s",argv[1]);
while (((dirp=readdir(dp))!=NULL) && (n<=50))
{
n++;
printf("%s\n",dirp->d_name);
}
printf("\n");
closedir(dp);
return 0;
}
本文提供了一个使用C语言进行目录遍历的简单示例程序。该程序通过命令行接收一个目录路径作为参数,并利用POSIX标准的 dirent.h 头文件中的 opendir, readdir 和 closedir 函数来读取并打印指定目录下的前50个条目。
6569

被折叠的 条评论
为什么被折叠?



