小甲鱼 发表于 2017-7-18 03:19:25

ftell -- 获取文件流的当前位置

ftell 函数文档

函数概要:

ftell 函数用于获取文件流的当前位置。


函数原型:

#include <stdio.h>
...
long int ftell(FILE *stream);

参数解析:


参数含义
stream 该参数是一个 FILE 对象的指针,指定一个待操作的文件流


返回值:

1. 如果该函数调用成功,返回当前文件流的位置指示器的值;

2. 如果该函数调用失败,返回 -1,并设置 errno 为一个错误号。


备注:

ftell() 函数返回的位置是从文件开始到当前位置指示器的字节数。

这个函数通常与 fseek() 函数一起使用,用于记录当前文件位置并在后续操作中返回到这个位置。


演示:

#include <stdio.h>

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

    fp = fopen("file.txt", "w+");
    fputs("I love programming.", fp);

    pos = ftell(fp);
    printf("Position: %ld\n", pos);

    fseek(fp, 6, SEEK_SET);
    fputs("I love FishC", fp);
    fclose(fp);

    return(0);
}

Chinese23 发表于 2019-2-10 18:22:35

这是啥老铁

清尘yt 发表于 2019-8-19 09:50:28

{:10_292:}

清尘yt 发表于 2019-8-19 09:54:49

ftell

语法:
#include <stdio.h>
long ftell( FILE *stream );

返回值 :
ftell()函数返回stream(流)当前的文件位置,如果发生错误返回-1.

Xiaopeng-Luo 发表于 2020-2-22 19:17:05

{:10_292:}

Xiaopeng-Luo 发表于 2020-2-22 19:17:49

你是在逗我吗?

快乐男 发表于 2021-6-22 19:16:35

are you kiding me?

快乐男 发表于 2021-6-22 19:47:01

    为了方便对文件的读写进行控制,系统为每个打开的文件设置了一个位置指示器,用于表示当前的读写位置。使用ftell函数可以返回当前的读写位置。

#include <stdio.h>
...
long ftell(FILE *stream);


    ftell函数返回一个long类型的值表示指定文件的当前读写位置,从某种意义上看,可以将文件看作一个数组,ftell的返回值就是这个“数组”的下标。

石竹皇子 发表于 2021-10-22 23:49:45

啊这?还没更新

wyxnogiveup 发表于 2023-1-8 19:58:50

{:10_247:}
页: [1]
查看完整版本: ftell -- 获取文件流的当前位置