【无标题】

本文详细介绍了C语言中涉及的文件操作函数如open(),close(),read(),write()和creat(),目录操作如chdir(),opendir(),readdir()以及文件树遍历函数ftw(),帮助开发者理解和使用这些核心系统调用。
摘要由CSDN通过智能技术生成

1. 文件操作:

open(): 用于打开文件。

头文件:#include <fcntl.h>

close(): 用于关闭文件。

头文件:#include <unistd.h>

read(): 从文件描述符读取数据。

头文件:#include <unistd.h>

write(): 向文件描述符写入数据。

头文件:#include <unistd.h>

creat(): 创建文件。

头文件:#include <fcntl.h>

2.目录操作:

chdir(): 改变当前工作目录。

头文件:#include <unistd.h>

opendir(): 打开目录流。

头文件:#include <dirent.h>

readdir(): 读取目录流中的一个目录项。

头文件:#include <dirent.h>

rewinddir(): 重置目录流到起始位置。

头文件:#include <dirent.h>

closedir(): 关闭目录流。

头文件:#include <dirent.h>

rmdir(): 删除目录。

头文件:#include <unistd.h>

mkdir(): 创建目录。

头文件:#include <sys/stat.h>

3.路径操作:

getcwd(): 获取当前工作目录。

头文件:#include <unistd.h>

4. 文件树遍历:

ftw(): 文件树遍历。

头文件:#include <ftw.h>

文件操作:

open(const char *path, int flags, mode_t mode):

path: 文件路径名。

flags: 打开文件的标志,如O_RDONLY(只读)、O_WRONLY(只写)、O_RDWR(读写)等。

mode: 文件的权限(仅在创建文件时有效)。

close(int fd):

fd: 文件描述符。

read(int fd, void *buf, size_t count):

fd: 文件描述符。

buf: 用于存储读取数据的缓冲区。

count: 要读取的字节数。

write(int fd, const void *buf, size_t count):

fd: 文件描述符。

buf: 包含要写入的数据的缓冲区。

count: 要写入的字节数。

creat(const char *path, mode_t mode):

path: 文件路径名。

mode: 文件的权限。

目录操作:

chdir(const char *path):

path: 目标目录的路径。

opendir(const char *name):

name: 目录的路径。

readdir(DIR *dirp):

dirp: 目录流指针。

rewinddir(DIR *dirp):

dirp: 目录流指针。

closedir(DIR *dirp):

dirp: 目录流指针。

rmdir(const char *path):

path: 要删除的目录的路径。

mkdir(const char *path, mode_t mode):

path: 要创建的目录的路径。

mode: 目录的权限。

路径操作:

getcwd(char *buf, size_t size):

buf: 用于存储当前工作目录的缓冲区。

size: 缓冲区的大小。

文件树遍历:

ftw(const char *dirpath, int (*fn)(const char *fpath, const struct stat *sb, int typeflag), int nopenfd):

dirpath: 要遍历的根目录的路径。

fn: 用户定义的回调函数,用于处理每个文件或目录。

nopenfd: 同时打开的文件描述符的最大数量。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值