尝试修改控制流中的当前位置。
virtual pos_type seekpos(
pos_type _Sp,
ios_base::openmode _Which = ios_base::in | ios_base::out
);
参数
_Sp
查找的位置。_Which
对指针位置指定模式。 默认是使您得以修改读写位置。
返回值
如果文件指针 fp 为空指针,则函数将失败。 否则,它竭力通过调用 fsetpos修改流位置 (fp,&fposn),其中 fposn 是存储在 pos中的 fpos_t 对象。 如果成功该函数,则函数返回 pos。 否则,它返回一种无效流位置。 若要定位的流位置是否无效,请比较使用 pos_type(off_type(-1))的返回值。
备注
受保护的虚成员函数竭力修改控制流中的当前位置。 对于类 basic_filebuf<Elem,Tr>对象流,位置可以由类型表示 fpos_t对象,存储所需的偏移量以及所有状态信息来分析一个宽流。 偏移指定零流中的第一个元素。(类型 pos_type 存储对象至少 fpos_t 对象。)
对于用于读取和写入的文件,打开输入和输出流先后确定。 若要切换插入和提取之间,则必须调用或 pubseekoffpubseekpos。 对 pubseekoff 的调用中 (因此为 seekoff) 流具有文本、二进制流和宽流的各个限制。
对于宽一个流,因此,如果任何插入发生,则打开了流,或者自到 streampos的最后调用,调用函数 溢出。 它也会插入必要的任何序列还原初始转换状态,可以使用转换文件个 fac 调用 fac.unshift 的需要。 类型 byte 的类型 char 的每个元素生成因此的 fp 写入文件关联指定指针的流时,fputc(byte, fp) 的连续调用。 如果对 fac.unshift 或编写的任何调用失败,则该函数不成功。
要求
页眉: <fstream>
命名空间: std