ftell函数用于得到文件位置指针当前位置相对于文件首的偏移字节数,下面给出一个简单的例子:
- #include<iostream>
- using namespace std;
-
- int main()
- {
- FILE *fp = fopen("myData.txt", "w");
- cout << ftell(fp) << endl;
- fprintf(fp, "123");
- cout << ftell(fp) << endl;
- fprintf(fp, "%d", 456);
- cout << ftell(fp) << endl;
- fclose(fp);
-
- int a;
- fp = fopen("myData.txt", "r");
- cout << ftell(fp) << endl;
- fscanf(fp, "%d", &a);
- cout << ftell(fp) << endl;
- cout << a << endl;
- fclose(fp);
- cout << "*********************" << endl;
-
- int b[10];
- memset(b, 0, sizeof(b));
- fp = fopen("yourData", "wb");
- cout << ftell(fp) << endl;
- fwrite(b, sizeof(b), 1, fp);
- cout << ftell(fp) << endl;
- fclose(fp);
-
- int c[10];
- fp = fopen("yourData", "rb");
- cout << ftell(fp) << endl;
- fread(c, sizeof(c), 1, fp);
- cout << ftell(fp) << endl;
- fclose(fp);
-
- return 0;
- }
结果为:
0
3
6
0
6
123456
*********************
0
40
0
40