[求助]文件函数fseek()的问题
我在实用大全上看到了一个程序,部分如下:FILE *fp;
char ch;
if((fp=fopen("test","rb"))==NULL)
{ printf("cannot open file\n");
exit(1);
}
fseek(fp,234,0);
ch=getc(fp);
……
实用大全上解释是本程序可以从一个叫test的文件中读取234个字节,
我的问题是fseek()函数把243个字节的内容读取到什么地方了,用什么方法去显示这243个字节的内容
----------------解决方案--------------------------------------------------------
fseek()是移动文件的位置指针的函数。
typedef struct
{ int _fd; //文件号
int _cleft; //缓冲区中剩下的字符数
int _mode; //文件操作方式
char *_next; //文件当前读写位置
char *_buff; //文件缓冲区位置
}FILE;
也就是说fseekfseek(fp,234,0);把文件中的成员_next=_next+234;并没有把234个字节的内容读取.
另:0表示从文件开头开始读写,中间第二个参数要求是long型数据,一般写成234L,而不只写234
----------------解决方案--------------------------------------------------------
只是定位而己
----------------解决方案--------------------------------------------------------
本程序可以从一个叫test的文件中234个字节后读取。
[此贴子已经被作者于2006-7-31 16:06:17编辑过]
----------------解决方案--------------------------------------------------------