每次我执行 'cout << endl' 甚至 'cout << "\n"' 然后在 Windows 下启动我的程序以输出到文件 ("a.exe < test.in > result.out") 我在“result.out”中得到“\r\n”行结尾。
到底有没有办法阻止它这样做,只在每个 'cout << "\n"' 上输出 "\n"?
提前致谢。
最佳答案
这适用于 Visual Studio 2013:
#include <io.h>
#include <fcntl.h>
#include <iostream>
int main( int argc, char * argv[] )
{
_setmode( _fileno( stdout ), _O_BINARY );
std::cout << std::endl;
}
它只会输出[0A],而不是[0D][0A]。
关于c++ - 如何使 cout 表现为二进制模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5654067/