scandir、direct的用法
表头文件:#include <dirent.h>
定义函数: int scandir(const char *dir, struct dirent **namelist, nt (*select) (const struct dirent *), nt (*compar) (const struct dirent **, const struct dirent**));
函数说明:scandir()会扫描参数dir指定 的目录文件,经由参数select指定的函数来挑选目录结构至参数namelist数组中,最后再调用参数compar指定的函数来排序namelist 数组中的目录数据。每次从目录文件中读取一个目录结构后便将此结构传给参数select所指的函数, select函数若不想要将此目录结构复制到namelist数组就返回0,若select为空指针则代表选择所有的目录结构。scandir()会调用 qsort()来排序数据,参数compar则为qsort()的参数,若是要排列目录名称字母则可使用alphasort(). 结构dirent定义请参考readdir()
返回值 :成功则返回复制到namelist数组中的数据结构数目,有错误发生则返回-1
错误代码:ENOMEM 核心内存不足
#include<sys/types.h>
#include<dirent.h>
int main()
{
struct dirent **namelist;
int n;
n=scandir(".",&namelist,0, alphasort);
// int scandir(const char* dir, struct dirent ***namelist,
int (*select)(const struct dirent *),
int (*compar)(const struct dirent **,const struct dirent **)
)
//四个参数
if(n<0)
perror("scandir");
else
while(n--) printf("%s/n",namelist[n]->d_name);
}
获取目录信息:
DIR * opendir(const char * pathname);
int closedir(DIR *dir);
struct dirent * readdir(DIR *dir);
struct dirent
{
long d_ino; /* inode number */
off_t d_off; /* offset to this dirent */
unsigned short d_reclen; /* length of this d_name */
char d_name [NAME_MAX+1]; /* file name (null-terminated) */
};
scandir、direct的用法相关推荐
- php获取指定目录下所有文件列表,PHP 获取指定目录下所有文件(包含子目录)...
set DestPath=.for /f "delims=" %%i in ('dir /ad /b ' ) do (copy %DestPath%\%%i\*.txt %Dest ...
- php dir opendir,php中目录操作opendir()、readdir()及scandir()用法示例
本文实例讲述了php中目录操作opendir().readdir()及scandir()用法.分享给大家供大家参考,具体如下: opendir(path,context)若成功,则该函数返回一个目录流 ...
- php函数scandir_PHP scandir( )用法及代码示例
PHP中的scandir()函数是一个内置函数,用于返回指定目录的文件和目录数组. scandir()函数列出了指定路径中存在的文件和目录. 文件和目录的目录,流行为以及sorting_order作为 ...
- C语言:scandir函数用法:枚举目录中指定的文件
函数介绍 头文件:#include <dirent.h> 函数定义:int scandir(const char *dirp, struct dirent ***namelist,int ...
- python os system用法_Python调用系统命令os.system()和os.popen()的实现
作为一门脚本语言,写脚本时执行系统命令可以说很常见了,python提供了相关的模块和方法. os模块提供了访问操作系统服务的功能,由于涉及到操作系统,它包含的内容比较多,这里只说system和pope ...
- py文件 添加模块映射_Python模块的定义,模块的导入,__name__用法实例分析
本文实例讲述了Python模块的定义,模块的导入,__name__用法.分享给大家供大家参考,具体如下: 相关内容: 什么是模块 模块的导入 模块的导入 自模块的导入 同级目录导入 不同级目录导入 目 ...
- 中provide的用法_英语词法:中考动词用法系统梳理下
1. 2. ⑴.used to do ⑴. offer:offer sb. sth. =offer sth.to sb. 过去常常做某事,后接动词原形作谓语. 为某人提供某物 ⑵."get ...
- jsp 中forward 和 Redirect 的用法区别
jsp中跳转的用法和区别 区别 用法 forward的用法 redirect的用法 区别 首先我们要知道的是forward是转发,地址用的是原地址,但是内容变为设置转向地址的内容. redirect ...
- exists的用法 python_10 个 Python 开发技巧
01 如何在运行状态查看源代码 查看函数的源代码,我们通常会使用 IDE 来完成.比如在 PyCharm 中,你可以 Ctrl + 鼠标点击 进入函数的源代码. 那如果没有 IDE 呢? 当我们想使用 ...
最新文章
- 万能android调用webservice方法——参数类型不受限制
- 解决SSH远程执行命令找不到环境变量的问题
- python数据处理实例-入门Python数据分析最好的实战项目(一)
- 数据中台实战(一):以B2B电商亿订为例谈数据埋点(产品经理视角)
- Hadoop集群搭建(27)
- 华软linux虚拟机密码,Linux_账户和组管理
- [react] 说说react diff的原理是什么
- hibernate系列之一
- Elasticsearch之中文分词器插件es-ik(博主推荐)
- 织梦Cms怎么一直服务器维护中,织梦后台搜索关键词维护中出现大量网址信息的处理办法...
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十九) 落雷!治疗!陷阱!连锁闪电!多段群伤!魔法之终极五重奏②...
- Mac IDA debug android exec program
- 判断linux下的网络服务是否正常启动
- matlab中创建txt文件,在MATLAB中创建填充了任意数据的大型txt文件
- Session的详解与使用
- java bitset clean方法_BitSet实现原理及源码解析
- ecshop 框架 简单分析
- Files 使用体验:一款高颜值 Windows 第三方资源管理器
- vue使用video和vue-video-player并且可实现视频铺满呦
- 2018总结,2019展望
热门文章
- 2022全网最全Java面试题-小米社招面试经验java,面试题整理(一面二面)
- JRE和JDK有什么区别,我们为什么使用JDK?
- 神马开户推广点击量和消费增加了很多是否有异常?
- 随手科技累计用户超3亿 领跑互金App
- 海思AI芯片(Hi3519A/3559A)方案学习一Ubuntu18.0.4上编译Hi3519AV100 uboot和kernel
- error LNK1207:-XXX.pdb”中的 PDB 格式不兼容;请删除并重新生成
- dataView及其用法
- 一个矩阵乘以一个向量是零向量,那么这个矩阵一定是零矩阵吗?
- java与道德经总章一些感悟
- 【软件硬件】精简指令集和复杂指令集的区别