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()
用于查詢當前文件指針位置。它們通常配合使用,可以實現在文件中進行定位和讀取操作。