C语言文件操作
fseek(fp,0,SEEK_SET);
File *k=fp;
fseek(fp,0,SEEK_END);
为什么k=fp啊
我明明把指向文件头指针的地址赋予了k,
然后用文件操作,使fp从指向它这个文件头变成了指向文件尾。
fseek(fp,0,SEEK_END);
->
fseek(k,0,SEEK_END);
因为你改变的是fp不是k
好比
int i = 1;
int j = i;
i = 2;
此时j还是1
你先把fp的指针赋给k k就是目前fp的指针
之后改变fp的指针 但k还指向之前fp的指针
这个是文件流指针,标识的文件流,不是位置,否则ftell返回的就是文件流指针而不是long数据了