tellg在文件中写入操作后移动

时间:2011-05-21 12:25:17

标签: c++ file-io

为什么tellg()在写操作后移动,我想它应该是tellp()?

std::fstream fs("c:\\log.txt", std::ios::in | std::ios::out | std::ios::trunc);
fs << "write";
std::cout << fs.tellg() << std::endl;
fs.close();

输出:

5

1 个答案:

答案 0 :(得分:2)

流实际上只维护一个指针,因此读取和写入指针实际上是相同的。如果你想对同一个文件进行读写操作,你应该保持自己的指针并在每次读/写操作之前进行搜索。