C语言复习 文件操作部分 fseek ftell

不喜欢说一些开场白啊啥的,直接从函数介绍开始
文件操作基础的四个函数: fopen() fclose() fseek() ftell

  1. fopen()
    fopen(const char*a,char **b) a:文件路径+文件名称 比如:”F:\mydata“
    b:文件的打开方式有以下几种

    比如: FILE* fp1; fp1 = fopen(“F:\mydeta.txt”,“r”);
    //以读的方式打开mydata.txt文件
    注:C语言中,’\’+字母 为转义字符,因此在输入文件路径时,需要将’\‘写为’\\’

  2. fclose(FILE* a)

    关闭数据文件,在使用完一个文件指针后关闭,否则会将缓冲区中的数据丢失,还有可能会误用该指针。
    注:以写的方式打开文件时,写入的数据会保存在缓冲区中,直到缓冲区满,在将缓冲区中的数据写入到磁盘中。(为了提高写入效率)

  3. fseek(FILE* a,long b,int c)
    不管是读文件还是写文件,每个都会有一个文件读写位置标记(类似于word中的光标),fseek函数的作用就是,将a所指向的文件的位置标记从c位置开始移动b个单位
    有三个宏
    SEEK_SET 文件起始处
    SEEK_CUT 文件位置标记的当前位置
    SEEK_END 文件末尾
    举个例子
    fseek(fp,0L,SEEK_END);将fp所指向文件的位置标记移动到文件末尾

  4. ftell(FILE*a)
    返回该文件指针所指向的文件位置标记的当前位置,出错返回-1

用fseek函数和ftell函数求一个文件的大小

int main()
{
	fp3 = fopen("F:\\QQSpeed2.00_Beta158_Build26_20190510.7z.001","r");
	fseek(fp3,0L,SEEK_END);
	printf("%d\n",ftell(fp3));
	return 0;
}

这个文件是我玩的一个游戏中的文件,对比一下,一个字节都不差
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值