为什么下面的代码不起作用

#include <iostream>
#include <fstream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
using namespace std;

int main(){
    string data;
    int i=0;

    while(i <= 5){
      i++;
      data += i;
      data += "\n";
    }

    ofstream myfile;
    myfile.open ("data.txt");
    myfile << data;
    myfile.close();
}

应该 附加一个 数字 然后 换行 并将其写入文件 (尚不存在)

该文件应如下所示...
1
2
3
4
5

代码有什么问题?

最佳答案

为什么不使用 operator<<

ofstream myfile;
myfile.open ("data.txt");
for ( int i = 1; i <= 5; ++i )
  myfile << i << "\n";
myfile.close();

关于C++ 附加到字符串并写入文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3558669/

10-16 07:19