使用FILE*或std :: ifstream读取文件会更快吗?

sam*_*moz 0 c++ performance

当我遇到使用std :: ofstream的问题时,我正在考虑这个问题.

我的想法是,由于std :: ifstream,它不支持随机访问.相反,它只是从头开始并流式传输,直到你到达你想要的部分.这是否很快,所以我们没有注意到?

而且我很确定FILE*支持随机访问,所以这也会很快?

str*_*ika 6

ifstream支持使用seekg进行随机访问.文件*可能更快,但你应该测量它.


Art*_*ler 5

由于它们都意味着系统调用,并且在操作的其余部分将花费一些数量级的时间,因此两者的性能应该非常相似.