问题描述:
在使用stdio.h中的fgetc和fputc函数时,文件位置指针回根据每一次 *** 作向后移动。
谁能详细告诉我怎么样控制文件的位置指针?
解析:
函数原型
int fseek( FILE *stream, long offset, int origin )
stream为要 *** 作的文件指针,offset为移动的范围,origin为起始位置
origin:SEEK_CUR为从文件的当前位置移动
SEED_END为从文件的末尾向前移动
SEEK_SET为从文件的开始向后移动
简单吧:)
网上给你找的,你看看哈。注意形象化的概念。-----------------------------
在学习文件定位函数之前,需要了解一下文件位置指针的概念。文件位置指针只是一个形象化的概念,在C语言中用文件位置指针来表示文件当前读或写的数据在文件中的位置。当通过fopen函数打开文件时,可以认为文件位置指针总是指向文件的开头、第一个数据之前。
当文件位置指针指向文件末尾时,表示文件结束。当进行读 *** 作时,总是从文件位置指针所指的位置开始,去读其后的数据,然后位置指针移到尚未读的数据之前,以备指示下一次的读(或写) *** 作。当进行写 *** 作时,总是从文件位置指针所指位置去写,然后移到刚写入的数据之后,以备指示下一次输出的起始位置。
“文件指针”和“文件位置指针”是两个不同的概念。
文件指针是指在程序中定义的FILE类型的变量,通过fopen函数调用给文件指针赋值,使文件指针和某个文件建立联系(这种联系实际上是通过fopen函数说明使用文件的方式),C语言中通过文件指针实现对文件的各种 *** 作。
摘自:东北大学出版社李一波编著《新概念C语言》
--------------------------------------
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)