我想问一个关于C语言fread函数的问题:如果一个文件里有5个字符,我先用fread读出了2个字符,然后不关闭文件,执行一段别的代码后再用fread读文件,那么是从第3个字符开始读,还是重新从文件开头读?
那要看你“动没动”这个文件的指针了,如果没有移动文件指针,而且还用这个文件指针继续读,那是顺序从第3个字符向后读,若你移动了文件指针,就从移动后的文件指针指向的地方向后读。一句话,读文件是从所用文件指针的当前位置开始依次向后读取的!
温馨提示:答案为网友推荐,仅供参考
第1个回答 2014-03-02
视情况而定。如果在“执行一段别的代码后再用fread读文件”中执行的代码含有fclose(fp),即把此文件关闭了。那么是从头开始读。
如果没有,则从第三个开始读。但是如果你就想从头开始读的话,此时可以调用rewind函数
如果没有,则从第三个开始读。但是如果你就想从头开始读的话,此时可以调用rewind函数
第2个回答 2014-03-02
参考二楼,回答正确
第3个回答 2014-03-02
重新从新文件开头读那是不可能的追问
那就是继续从第3个字符开始读了?