做网站推广运营前景,搜索引擎广告形式有哪些,辽阳做网站,百度指数可以用来干什么需求#xff1a;有时候读文件时#xff0c;需要知道文件的字符总的个数#xff0c;可能是为了提前定义缓冲区大小或者拷贝文件等等。也可以用于动态创建数组。在进行这两个问题之前#xff0c;先来了解一下两个函数#xff0c;这两个函数配合就能够实现计算大小的功能。函… 需求有时候读文件时需要知道文件的字符总的个数可能是为了提前定义缓冲区大小或者拷贝文件等等。也可以用于动态创建数组。在进行这两个问题之前先来了解一下两个函数这两个函数配合就能够实现计算大小的功能。函数 一fseekstdio中的库函数函数原型int fseek(FILE *stream, long int offset, int whence);功能设定文件指针的位置参数stream: 需要读取的文件流。whence文件源指针的位置值可以是这三个中的一个SEEK_SET、SEEK_CUR、SEEK_END分别表示文件开头位置文件当前位置文件结尾位置。offset表示以 whence为基点的偏移量的大小。所以这个函数的整体功能是从任意位置比如最常用的SEEK_SET、SEEK_CUR、SEEK_END移动文件指针移动的大小为offset。函数执行之后文件指针就移动到了whence offset位置处。返回值执行成功返回0执行失败返回非零。函数二ftellstdio中的库函数函数原型 long int ftell(FILE *stream);功能当前文件读写位置。返回值是当前读写位置偏离文件头部的字节数.所以由fseek设定文件指针的位置再由ftell计算从文件开头到fseek获取的位置的字节数。实例代码如下include stdio.h
#include stdlib.hint main()
{
FILE * fp;
fp fopen(addoverflowDemo.c,r);
if(fp NULL){return -1;
}//int fseek(FILE *stream, long int offset, int whence); 获取起始位置
fseek(fp,0,SEEK_END);
//long int ftell(FILE *stream);计算开头到fseek位置的字符数
int value;
value ftell(fp);
printf(字符数为%dn,value);return EXIT_SUCCESS;
}