1.打开目标目录
2.读取目录
3.关闭目录

(1)
文件和目录(1)
功能:
打开一个目录获得一个目录流指针DIR*(指向整体)
参数:
name:目录名
返回值:
成功:返回目录流指针
失败:返回NULL

(2)
文件和目录(1)
功能:
从目录流中读取文件信息并返回保存信息的结构体地址。
dirent*:目录入口指针
参数:
dirp:opendir的返回值,即目录流指针
返回:
成功:返回保存文件信息的结构体
失败或读到目录流末尾:返回NULL
文件和目录(1)
文件和目录(1)
(3)
文件和目录(1)
功能:
关闭之前已经打开的目录流对象
参数:
dirp:opendir的返回值,即目录流指针
返回值:
成功:返回0
失败:返回-1
/*

*/
eg:文件和目录(1)
(4)
文件和目录(1)
功能:
改变当前程序的工作路径
参数:
path:改变到的路径
返回值:
成功:返回0;
失败:返回-1;

(5)
文件和目录(1)
功能:
获得当前的工作路径,相当于命令行pwd
参数:
buf:保存工作路径的空间
size:保存路径空间的长度
返回值:
成功:返回包含路径的字符串首地址
失败:返回NULL

/*

*/
eg:
文件和目录(1)
(6)
文件和目录(1)
功能:
创建一个目录
参数:
pathname:路径+名字
mode:一般为0777,实际为0777-0002(掩码umask)
返回:
成功:返回0;
失败:返回-1;

eg:
文件和目录(1)
(7)
文件和目录(1)
功能:
删除一个空目录
参数:
pathname:路径+目录
返回:
成功:返回0;
失败:返回-1;

eg:
文件和目录(1)
练习:
实现ls
文件和目录(1)

相关文章: