执行以下代码#include #包括int main() { std::fstream fs{\'/dev/shm/test.bin\', std::ios::in | std::ios::out | std::ios::binary | st...
执行以下代码
#include <iostream>
#include <fstream>
int main() {
std::fstream fs{"/dev/shm/test.bin", std::ios::in | std::ios::out | std::ios::binary | std::ios::trunc};
std::cerr << "open: "<< fs.is_open()
<< " good: " << fs.good()
<< " tellg: "<< fs.tellg()
<< " tellp: " << fs.tellp()
<< std::endl;
// writes "12" in binary
fs.write("123", 2);
std::cerr << "open: "<< fs.is_open()
<< " good: " << fs.good()
<< " tellg: "<< fs.tellg()
<< " tellp: " << fs.tellp()
<< std::endl;
return 0;
}
印刷
open: 1 good: 1 tellg: 0 tellp: 0
open: 1 good: 1 tellg: 2 tellp: 2
为什么会 tellg()
因为我没有执行任何读取,所以 tellg()
不应该
为什么 std::fstream::write() 修改了 tellg()?
下载声明:
本站所有软件和资料均为软件作者提供或网友推荐发布而来,仅供学习和研究使用,不得用于任何商业用途。如本站不慎侵犯你的版权请联系我,我将及时处理,并撤下相关内容!