
正文
c语言fseek函数没用 c++fseek函数
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
C语言关于fseek()函数的疑问
多次调用fseek()不行吗
比如
fseek(fp,200,SEEK_SET);
fseek(fp,200,SEEK_CUR);
fseek(fp,200,SEEK_CUR);
相关问答
Q1: c语言使用fputs函数写入无效?
文件指针的问题,一般来说,同时读写一个文件并不可取。硬要如此的话,使用fseek定位好写入位置后再写入
Q2: C语言fseek函数一个很头疼问题?
在大部分情况下,
在用二进制格式存储的时候,一个int类型占4个字节。
5 *sizeof(int) = 20
此时光标移到600前面,如果你读的话
int i;
fread( fp, i, sizeof(i) );
读到的是600
Q3: C语言关于fseek函数。
中文文件要用TCHAR之类c语言fseek函数没用的多字节方法处理。
c语言fseek函数没用你的方法是把中文看成2进制一个字符一个字符的数据文件来处理c语言fseek函数没用,也是可以的,fseek工作完全正常,
问题是输出字符的显示,你可以显示每个字节的值,但不能显示成肉眼可识别的汉字。
putchar ( ch ); 可用于 ASCII字符。
你可以换成c语言fseek函数没用: printf("%02x ", 0xff ch ); 可以显示单个字节的码值。从输出的码值可以看出,程序没有问题,只是不能显示成肉眼可识别的汉字。
另外,如果是unicode中文文件,则文件头有不可见的文件类型区分码0xfe 0xff 或 0xff 0xfe 等等。
2个单个字节码,合成一个双字节码,有大端和小端文件问题,也许需要互相交换相邻2个字节,再显示成中文。
Q4: 在C语言中fseek()的功能
fseek()是重定位流(数据流/文件)上的文件内部位置指针。
注意:文件指针指向文件/流。位置指针指向文件内部的字节位置,随着文件的读取会移动,文件指针如果不重新赋值将不会改变或指向别的文件。
如果执行成功,stream将指向以fromwhere为基准,偏移offset(指针偏移量)个字节的位置,函数返回0。如果执行失败(比如offset取值大于等于2*1024*1024*1024,即long的正数范围2G),则不改变stream指向的位置,函数返回一个非0值。
扩展资料:
注意事项
fseek函数的文件指针,应该为已经打开的文件。如果没有打开的文件,那么将会出现错误。 fseek函数也可以这样理解,相当于在文件当中定位。
这样在读取规律性存储文件时可以利用其OFFSET偏移量读取文件上任意的内容。
fseek函数一般用于二进制文件,也可以用于文本文件。用于文本文件操作时,需特别注意只有fseek(fp, 0, SEEK_SET) 和 fseek(fp, ftell(fp), SEEK_SET)能确保结果符合预期。
参考资料来源:百度百科-fseek
Q5: C语言用“rb+”mode打开文件,fseek移动指针没有效果,想要更改文件某一条信息,结果都是追加。
IPosition的值赋得不对,将
IPosition=ftell(fp);
改为
IPosition+=sizeof(Billing);
试试吧
关于c语言fseek函数没用和c++fseek函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








