seekg()
和tellg()
都是istream
类的成员函数,用于文件定位和查询当前文件位置。它们的区别在于:
seekg()
用于移动文件内部指针到指定位置。可以通过指定相对于文件开头、文件结尾或当前位置的偏移量来移动指针。语法为:
stream.seekg(offset, direction);
其中offset
为偏移量,direction
为偏移方向,可以是ios::beg
(文件开头)、ios::end
(文件结尾)或ios::cur
(当前位置)。
tellg()
用于查询当前文件位置。它返回一个streampos
类型的值,表示当前文件指针的位置。语法为:
streampos pos = stream.tellg();
其中pos
为当前文件指针的位置。
总的来说,seekg()
用于移动文件指针位置,而tellg()
用于查询当前文件指针位置。它们通常配合使用,可以实现在文件中进行定位和读取操作。