news 2026/4/16 11:54:29

目录的读取与访问

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
目录的读取与访问

文章目录

  • 打开目录
  • 关闭目录
  • 访问目录
  • 例程:获取文件夹的内容

打开目录

  • 头文件:
    • #include <dirent.h>
  • 函数原型:
    • DIR * opendir(const char *name);
    • DIR * fdopendir(int fd);//使用文件描述符,要配合open函数使用
  • 返回值:
    • 成功时返回目录流指针,出错时返回NULL

DIR是用来描述一个打开的目录文件的结构体类型,typedef重命名而来的类型名

  • vim /usr/include/dirent.h
  • 在C语言的标准库中,DIR 类型被用于表示一个目录流。它通常定义在 <dirent.h> 头文件中,并用于目录的遍历操作。DIR 类型可能是一个不完整类型(incomplete type),这意味着它的具体实现细节在<dirent.h> 头文件中并没有完全展开,而只是声明了它的存在,这样的设计允许库的实现者在不暴露内部数据结构的情况下提供接口

关闭目录

  • 头文件:
    • #include <dirent.h>
  • 函数原型:
    • int closedir(DIR * dirp);
  • 返回值:
    • 成功时返回0,出错时返回EOF

访问目录

  • 头文件:
    • #include <dirent.h>
  • 函数原型:
    • struct dirent * readdir(DIR * dirp);
  • 参数
    • 目录流指针DIR * dirp
  • 返回值:
    • struct dirent 描述目录流中一个目录项的结构体类型
    • 成功时返回目录流dirp中一个目录项
    • 出错或到末尾时返回NULL

struct dirent 和 DIR 是两个不同的结构体

例程:获取文件夹的内容

  • 打印指定的目录下的文件的名称
#include<stdio.h>#include<dirent.h>intmain(intargc,char*argv[]){DIR*dirp;structdirent*dp;if(argc<2){printf("Usage : %s <directory>\n",argv[0]);return-1;}if((dirp=opendir(argv[1]))==NULL){perror("opendir");return-1;}while((dp=readdir(dirp))!=NULL){if(dp->d_type==DT_DIR){printf("dirent file: %s\n",dp->d_name);}elseif(dp->d_type==DT_REG){printf("regular file: %s\n",dp->d_name);}else{printf("%s\n",dp->d_name);}}closedir(dirp);return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 5:27:54

教育科研扶持计划:推广TensorRT学术应用场景

教育科研扶持计划&#xff1a;推广TensorRT学术应用场景 在高校AI实验室里&#xff0c;一个常见的场景是&#xff1a;学生刚刚训练完一个基于Transformer的目标检测模型&#xff0c;满心期待地准备部署到边缘设备进行实时推理测试&#xff0c;结果发现——单帧推理耗时超过200毫…

作者头像 李华
网站建设 2026/4/15 16:39:31

2025自考必备!9个降AI率工具测评榜单

2025自考必备&#xff01;9个降AI率工具测评榜单 2025自考必备&#xff01;9个降AI率工具测评榜单 在2025年&#xff0c;随着各大高校和学术平台对AIGC检测技术的不断升级&#xff0c;论文的AI率问题已成为自考生和科研人员最头疼的难题之一。很多学生在提交前发现AI率高达60%以…

作者头像 李华
网站建设 2026/4/15 16:33:57

2025最新!专科生必看9款AI论文工具测评与推荐

2025最新&#xff01;专科生必看9款AI论文工具测评与推荐 2025年专科生论文写作工具测评&#xff1a;如何选到真正实用的AI助手 随着人工智能技术的不断进步&#xff0c;越来越多的专科生开始借助AI论文工具提升写作效率。然而&#xff0c;面对市场上琳琅满目的产品&#xff0c…

作者头像 李华
网站建设 2026/4/15 10:25:59

【毕业设计】基于Springboot+Vue的电子商务订单管理系统设计与实现(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/15 15:06:11

计算机Java毕设实战-基于Springboot+Vue的电子商务订单管理系统设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/4/12 0:53:52

python协同过滤算法django餐厅推荐系统_ve4u1ds7

目录具体实现截图项目介绍论文大纲核心代码部分展示可定制开发之亮点部门介绍结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持Python(flask,django)、…

作者头像 李华