C - ftell()函数

时间:2014-08-17 16:59:59

标签: c pointers

我不明白为什么我会通过这个函数获得一些文件的奇怪结果。

例如,如果我有

  

input.txt中

并且里面有一个像

这样的字符串
  

ABCD

如果我这样做:

FILE* file = fopen("intput.txt", "r");
char currentChar;
long n = ftell(file); //return 0 it's ok
fread(&currentChar, sizeof(char), 1, file);
long n = ftell(file); // return 1 it's ok

现在,如果我做相同的事情,但使用(例如).png文件,我会得到不同的结果:

FILE* file = fopen("intput.png", "r");
char currentChar;
long n = ftell(file); //return 0 it's ok
fread(&currentChar, sizeof(char), 1, file);
long n = ftell(file); // return 216 why return 216 and not 1 

我不明白为什么使用input.png文件我会得到216而不是1

0 个答案:

没有答案