📜  C中的ftell()示例(1)

📅  最后修改于: 2023-12-03 14:40:25.192000             🧑  作者: Mango

C中的ftell()示例

在C语言中,ftell()是一个文件IO函数,用于获取文件指针当前位置的偏移量(以字节为单位)。

语法
long int ftell(FILE *stream);

其中,stream表示指向要获取当前位置的文件的指针。

返回值

ftell()函数返回文件指针当前位置的偏移量,以长整型(long int)的形式表示。如果函数执行失败,则返回-1。

示例

下面是一个使用ftell()函数的C程序示例:

#include <stdio.h>

int main() {
   FILE *fp;
   long int position;

   fp = fopen("example.txt", "r");
   if(fp == NULL) {
      perror("Error opening file");
      return(-1);
   }
   
   fseek(fp, 0L, SEEK_END);
   position = ftell(fp);
   fclose(fp);

   printf("The file size is %ld bytes\n", position);

   return 0;
}

该程序打开一个名为example.txt的文件,并计算出其大小(以字节数表示),最后输出文件大小。

程序中,首先使用fopen()函数打开文件,并进行错误检查。然后使用fseek()函数将文件指针移到文件末尾,使用ftell()函数获取当前位置的偏移量,即文件大小。最后,关闭文件并输出文件大小。

总结

ftell()函数是C语言文件IO函数之一,用于获取文件指针当前位置的偏移量,以字节为单位。通过该函数,可以获取文件的大小、读取文件的特定部分等。当然,在使用该函数时,需要注意文件指针在移动后的位置是否正确。