iostream的问题,我的输出endl是littles square

Dog*_*Dog 1 c++ iostream newline

当我写入文件时,我的输出有问题当我将endl更改为行时,我得到了正方形.

std::ofstream outfile   (a_szFilename, std::ofstream::binary);
outfile<<"["<<TEST<<"]"<<std::endl;
Run Code Online (Sandbox Code Playgroud)

我在我的文件中得到类似的东西加上其他输出不写在下一行但是在同一个上.

[TEST]square
Run Code Online (Sandbox Code Playgroud)

显然我不能在这里写广场,但它是关于ofstream是二进制还是其他东西?

Jef*_*ite 5

在这种情况下,您真的不想以二进制模式打开文件.

试试这个:

std::ofstream outfile   (a_szFilename);
outfile<<"["<<TEST<<"]"<<std::endl;
Run Code Online (Sandbox Code Playgroud)

  • 我认为这不应该被低估,这是正确的.格式化输出和二进制文件不能一起使用. (2认同)