我正在尝试完成这个奇怪的事情,它在文件中查找特定样式的序列,检查它是否是它正在查找的序列;然后,在确认后,它会回溯并将某些值更改为期望值。这是什么MSDN警告fopen(或fopen_s)试图说?
它已经做了所有这些......我的问题是与此以下警告:
当指定
"r+"
,"w+"
,或"a+"
访问类型,阅读和写作都被允许(该文件说开放“更新”)。但是,从阅读切换到书写时,输入操作必须遇到EOF
标记。如果没有EOF
,则必须使用对文件定位功能的中间调用。文件定位功能是fsetpos
,fseek
和rewind
。当您从写入切换到读取时,您必须使用中间呼叫fflush
或文件定位功能。
到底这是什么警告想说什么?顺便说一句,我正在打电话给一个文件定位功能,正当我从阅读切换到写作时,使用fsetpos
来寻找我存储的位置。
如果我没有?
写入/读取是否从最后一个位置指示符的位置继续?
随着代码实例:
...
getc(somefilepointer);
fprintf_s(somefilepointer, "%X", 28);
...
和
...
getc(somefilepointer);
fgetpos(somefilepointer, &an_fpos_t);
fsetpos(somefilepointer, &an_fpos_t);
fprintf_s(somefilepointer, "%X", 28);
...
不是这些两个相同的?