我对 C++ 中的函数 tellp 有疑问。使用下面的代码,而不是用“CCCCCC”替换“AAAAAA”,生成的文件打印:“AAAAAA\n”“CCCCCC\n”。
ofstream file;
file.open("log.txt", ios::out|ios::app);
file.write ....
long posLog1 = file.tellp(); -> prints 122
file << "AAAAAA" << endl;
long posLog2 = file.tellp(); -> prints 129
file.seekp (posLog2 - 7);
long posLog2 = file.tellp(); -> prints 122
file << "CCCCCC" << endl;
long posLog3 = file.tellp(); -> prints 136 instead of 129