fseek( fp, SEEK_SET, SEEK_END );的作用?以及如何获取一个文件的大小?
目录
一、fseek(fp,SEEK_SET,SEEK_END);的作用?
1.offset表示文件指针的偏移量
2.whence表示偏移量的基准位置
二、如何获取一个文件的大小
一、fseek( fp, SEEK_SET, SEEK_END );
fseek函数用于设置文件指针的位置,它的原型如下:
/*fseek函数原型*/
int fseek(FILE *stream, long offset, int whence);
其中,stream表示文件指针,offset表示文件指针的偏移量,whence表示偏移量的基准位置。
1.offset表示文件指针的偏移量
SEEK_SET:基准位置为文件开头,即offset表示距离文件开头的偏移量。
SEEK_CUR:基准位置为文件当前位置,即offset表示距离文件当前位置的偏移量。
SEEK_END:基准位置为文件末尾,即offset表示距离文件末尾的偏移量。
2.whence表示偏移量的基准位置
当whence为SEEK_SET时,offset表示距离文件开头的偏移量;
当whence为SEEK_CUR时,offset表示距离文件当前位置的偏移量;
当whence为SEEK_END时,offset表示距离文件末尾的偏移量。
在本代码中,fseek被用来将文件指针指向文件末尾,具体的代码如下:
/*将文件指针指向文件末尾*/
fseek( fp, SEEK_SET, SEEK_END );
其中,fp为文件指针,SEEK_SET和SEEK_END分别表示偏移量的基准位置为文件开头和文件末尾。因此,这句代码的作用是将文件指针fp指向文件末尾的位置。这个操作的目的是为了获取文件的大小,因为文件大小可以通过文件末尾的偏移量计算出来。
二、如何获取一个文件的大小
fseek函数的作用是设置文件指针的位置,通过offset和whence参数的组合,可以实现对文件指针的灵活定位。在本代码中,通过将whence设置为SEEK_END,将offset设置为0,实现了将文件指针指向文件末尾的目的,从而可以通过ftell函数获取文件大小。代码如下:
/*获取文件大小函数*/
unsigned long get_file_size(const char *filename)
{ unsigned long size; // 声明一个变量size,表示文件的大小 FILE* fp = fopen( filename, "rb" ); // 以只读方式打开文件,指针fp指向文件开头if(fp==NULL) // 如果打开文件失败,则输出错误信息,返回0{ printf("ERROR: Open file [%s] failed.\n", filename); return 0; } fseek( fp, SEEK_SET, SEEK_END ); // 将指针fp指向文件末尾size=ftell(fp); // 获取指针fp当前位置相对于文件开头的偏移量,即文件大小fclose(fp); // 关闭文件return size; // 返回文件大小
}
笔记共享,随手一赞是对我最大的支持,希望以上内容对你有所帮助;
fseek( fp, SEEK_SET, SEEK_END );的作用?以及如何获取一个文件的大小?相关推荐
- linux 几个文件夹作用,linux下每一个文件夹的作用.docx
目录结构及主要内容 "/"根冃录部分有以F子冃录: /usr 口录包含所有的命令.程序库.文档和英它文件.这些文件在正常操作中不会被改变的.这个目录也包含你的Linux 发行版本的 ...
- Fseek()与Ftell()函数的作用
Fseek() fseek函数功能是将文件指针移动到指定的地方,因此可以通过fseek重置文件指针的位置. 函数原型: int fseek(FILE *stream, long offset, int ...
- fseek ftell rewind stat 等函数,实现获取文件大小
fseek ftell rewind stat 等函数,实现获取文件大小 fseek()函数:int fseek(FILE *stream, long int offset, int whence) ...
- 获取文件的大小(fseek和ftell函数)
//头文件 #include <stdio.h> #include <stdlib.h> #include <string.h> //定义获取文件大小的函数 int ...
- 进阶指令——df指令(作用:查看磁盘的空间)、free指令(作用:查看内存使用情况)、head指令(作用:查看一个文件的前n行,如果不指定n,则默认显示前10行)、tail指令、less指令
1.df指令 作用:查看磁盘的空间 语法:#df -h -h表示以可读性较高的形式展示大小 2.free指令 作用:查看内存使用情况 语法:#free -m -m表示以mb为单位查看 剩余的真实可 ...
- c语言中fputc函数的作用是,C语言中文件的读写函数之 fputc、fgetc
C语言中文件的读写函数之 fputc.fgetc 首先,我们要知道fputs和fgetc这两个函数是包含在标准库函数中的函数,换句话说,就是封装在标准函数中的两个函数.其中这两个函数都是每次只能输入或 ...
- android主要文件的作用是什么,androidmanifest.xml文件的作用是什么
androidmanifest.xml文件的作用:1.是每个android程序中必须的文件,它位于整个项目的根目录:2.配置程序运行所必要的组件,权限,以及一些相关信息:3.是整个应用的入口,所以有助 ...
- java中接口有什么作用?请创建一个接口(举例)
接口的作用就是把使用接口的人和实现接口的人分开,实现接口的人不必要关心谁去使用,而使用接口的人也不用关心谁实现的接口,由接口将他们联系在一起.以上像一段绕口令,那么通过下面的几段程序解释: 1.以生产 ...
- Windows学习总结(4)——Host文件的作用和如何修改Host文件
本经验将为您介绍,什么是Host文件,Host文件作用,Host文件的位置等信息,以帮忙您了解Host文件. 方法/步骤 什么是HOST文件:
最新文章
- python编程if语法-二、python 语法之变量赋值与if(if else)
- hql与sql的区别
- 2020\Simulation_2\4.括号序列
- MyBatis第四天
- 对全局变量,static静态变量的理解
- 预训练卷不动,可以卷输入预处理啊!
- Mount挂载命令使用方法
- 求10 个整数中最大值
- 管理新语:主管不要当传声筒,要检查、核实
- android怎么oauth2公版认证,Android中腾讯微博OAuth认证(一)---获取RequestToken
- 浅析“npm run dev”作用
- 小心! Java三目运算符
- wxpython 设置热键
- 接受投资人投入材料一批_接受投资者投入材料的会计分录
- 使用Angular 2, ASP。NET Core 1.1和实体框架核心(第1部分)
- KaTex各种语法汇总
- OpenWrt系列教程汇总
- P4460 [CQOI2018]解锁屏幕
- android twerk,抖音薛老湿bgm手机铃声响起拍照是什么歌 Android Twerk在哪听
- 天行健君子以自强不息