endl不在输出文件中创建新行

时间:2017-03-28 04:46:12

标签: c++ fileoutputstream endl

这是我现在的代码

#include <iostream>
#include <fstream>

using namespace std;

int main(int argc, char* argv[])
{

// set up input file
ifstream lInput;    // declare an input file variable (object)
ofstream lOutput;
lInput.open(argv[1], ifstream::binary); // open an input file (binary)
lOutput.open(argv[2], ofstream::binary);
if (!lInput.good())
{
    // operation failed
    cerr << "Cannot open input file " << argv[1] << endl;
    return 2;       // program failed (input)
}

lOutput << "test" << endl;
lOutput << "test2" << endl;

我当前的输出是

  

testtest2

如何进入

  

测试

     

TEST2

谢谢你的帮助

编辑:测试到“测试”,测试2到“测试2” edit2:lOutpt到lOutput

1 个答案:

答案 0 :(得分:3)

C和C ++有两种类型的文件:文本二进制。二进制文件不是文本。它们没有线条,因此它们没有线条结尾。如果您想明确谈论行结尾和其他与文本相关的事物,请使用文本文件。