您的位置:首页 > 其它

1.1 列出一个目录下的所有文件

2013-05-22 22:06 274 查看
int main(int argc, char *argv[])
{
DIR *pdir;//目录流指针
struct dirent *ptr;     //指向目录结构(目录结构体指针)
//要有两个参数才行
if(argc != 2)
{
printf("参数不正确!\n");
exit(1);
}
if((pdir = opendir(argv[1])) == NULL)
{
printf("不能打开目录: %s\n", argv[1]);
exit(1);
}
while((ptr = readdir(pdir)) != NULL)    //读到目录尾或出错返回NULL
{
printf("文件名: %s\n", ptr->d_name);//struct dirent结构参考字典p366
}

return 0;
}


关于 struct dirent结构体原型为:

struct dirent
{
ino_t d_ino;    //目录进入点的inode
off_t d_off;    //目录开头到这个进入点的位移
unsigned short int d_reclen;    //d_name的长度, 不包含NULL
unsigned char d_type;    //d_name文件类型
char d_name[256];    //目录中的文件名
};


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: