学习记录第二十一天

目录操作

  1. 打开目录:
    • 使用opendir()函数,传入目录名作为参数,成功时返回一个DIR*类型的目录流指针,失败时返回NULL
  2. 读取目录:
    • 使用readdir()函数,传入目录流指针作为参数,成功时返回一个指向dirent结构体的指针,该结构体包含了文件的信息(如文件名)。到达目录末尾或出错时返回NULL
  3. 关闭目录:
    • 使用closedir()函数,传入目录流指针作为参数,成功时返回0,失败时返回-1

函数调用

1. opendir

 DIR *opendir(const char *name);

功能:打开一个目录流,以便可以读取目录内容。

参数:nameconst char *)- 要打开的目录的路径。

返回值:成功时返回一个指向DIR类型的指针,失败时返回NULL

2. readdir

 struct dirent *readdir(DIR *dirp);

功能:从opendir返回的目录流中读取一个目录项。从目录流中读取文件信息并将保存信息的结构体

参数:dirpDIR *)- 之前通过opendir获得的目录流指针。

返回值:成功时返回一个指向struct dirent的指针,该结构体包含了目录项的信息(如文件名)。如果到达目录末尾或出错,则返回NULL

3. closedir

int closedir(DIR *dirp);

功能:关闭一个通过opendir打开的目录流。

参数:dirpDIR *)- 要关闭的目录流指针。

返回值:成功时返回0,失败时返回-1

4. chdir

int chdir(const char *path);

功能:改变当前进程的工作目录。

参数:pathconst char *)- 新的工作目录路径。

返回值:成功时返回0,失败时返回-1

5. getcwd

 char *getcwd(char *buf, size_t size);

功能:获取当前工作目录的绝对路径。

参数:bufchar *)- 用于存储路径的缓冲区,sizesize_t)- 缓冲区的大小。

返回值:成功时返回指向buf的指针,失败时返回NULL

6. mkdir

  int mkdir(const char *pathname, mode_t mode);

功能:创建一个新目录。

参数:pathnameconst char *)- 要创建的目录的路径,modemode_t)- 目录的权限。注意,实际权限还会受到umask的影响。

返回值:成功时返回0,失败时返回-1

7. rmdir

  int rmdir(const char *pathname);

功能:删除一个空目录。

参数:pathnameconst char *)- 要删除的目录的路径。

返回值:成功时返回0,失败时返回-1

8. stat

 int stat(const char *pathname, struct stat *statbuf);

功能:获取文件或目录的状态信息。

参数:pathconst char *)- 文件或目录的路径,bufstruct stat *)- 用于存储状态信息的结构体。

返回值:成功时返回0,失败时返回-1

9. time 函数

    time_t time(time_t *tloc);

 time函数用于获取当前时间(自1970年1月1日以来的秒数)。

参数:t:如果非NULL,则存储当前时间的秒数:

返回值:成功时返回当前时间的秒数。失败时返回-1(但这种情况很少见)。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值