<分区>
我想知道为什么我不能使用 std::ifstream
的 >>
运算符从二进制文件中读取 unsigned int。
#include <fstream>
int main(int argc, char* argv[])
{
std::ifstream in(argv[1]);
if(in.fail())
return -1;
unsigned int atom_size = 0;
in.read(reinterpret_cast<char*>(&atom_size), 4);
in >> atom_size;
return 0;
}
当我使用 in.read
时,我得到了我想要的值,但是当我使用 >>>
运算符时,我的 atom_size 变量没有改变。为什么?