FILE与文件描述符的对比

FILE是一个结构体,C语言的stdio.h头文件中,定义了用于文件操作的结构体FILE。这样,我们通过fopen返回一个文件指针(指向FILE结构体的指针)来进行文件操作。

FILE结构体的定义如下:

#ifndef _FILE_DEFINED
struct _iobuf {
        char *_ptr;   //文件输入的下一个位置
        int   _cnt;   //当前缓冲区的相对位置
        char *_base;  //指向文件的起始位置
        int   _flag;  //文件标志
        int   _file;  //文件描述符
        int   _charbuf; //检查缓冲区状况
        int   _bufsiz;  //缓冲区大小
        char *_tmpfname;//临时文件名
        };
typedef struct _iobuf FILE;

打开一个文件将返回指向FILE结构(在stdio.h中定义)的指针,它包含用于处理文件的信息,也就是说,这个结构包含文件描述符。C语言库中的操作文件函数都是调用的系统接口中的(read,write,open)实现的。C库中的文件操作就是对系统接口对文件操作的一层封装。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值