fwrite fread与流定位相关接口

fgets与gets的区别

fgets:

从指定的已打开文件中读取最多一行数据(遇到n停止读取)

fgets保留\n字符并字符串末尾添加"\0"

fgets最多读取size-1个字符,最后一个位置存放"\0"

gets:

指定从终端设备读取数据

gets会将终端读到的"\n"字符替换成"\0"

gets是危险的,因为在读取时,没有大小的限制,可能造成内存越界

size_t fwrite(const void *ptr, size_t size,size_t nmeml,FILE *stream);

功能:向文件中写入nmemb个大小是size的数据到文件中

参数:

pt:要写入的数据的首地址

size:每个元素的字节数

nmemb:要写入的元素个数

stream:要写入的文件流指针

返回值:

成功:返回实际写入的元素个数

size t fread(void *ptr,size_t size,size_t mmemb,FILE *stream);

功能:从文件中读取mmemb个大小是size的元素

参数:

ptr:存储读取到数据的首地址

size:每个元素的大小

nmemb:希望从文件中读取的元素个数

stream:要读的文件流指针

返回值:

成功:实际读到的元素个数

读到文件末尾:0

fseek: int fseek(FILE *stream, long offset,

int whence)

功能:实现文件流重新定位

参数:

stream:需要定位的文件流指针;

offset:偏移量;whence:定位的相对位置

SEEK_SET:从头进行偏移

SEET_CUR:从当前位置开始偏移

SEET_END:从文件末尾偏移

返回值:

成功:返回当前的偏移量;

失败:-1

ftell:

long ftell(FILE *stream);

功能:获取流的当前位置到文开头的偏移量

参数:

stream:文件流

返回:

偏移量:byte

rewind: void rewind(FILE *stream)

功能:流复位函数 (复位到开头);等价于

fseek(fp, O, SEEK_SET);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值