如何将函数的结果写入文件C++

我认为这是一个非常简单的问题,但我没有找到答案。

我希望将函数的结果写入文件。

文件已打开,我可以向其中写入一个简单的字符串,但不能写入函数的结果。

我缺少什么?

#include <iostream>
#include <fstream>
using namespace std;

void addingtext(){
    for (int i = 0; i < 8; ++i)
    {
        std::cout << i << endl;
    }
}

int main () {
    ofstream file;
    file.open("example.txt");
    if(file.is_open()){
        std::cout << "File Open Access n";
    }
    file << "Write this to the file";
    addingtext();
    //file << addingtext;

    file.close();

    return 0;
}

回答

addingtext()不返回任何内容,并写入std::cout.

您有两个选择:

选项1:制作addingtext()返回一个字符串,然后写的文件:

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

std::string addingtext() {
    std::string result;
    for (int i = 0; i < 8; ++i)
    {
        std::cout << i << endl;
        result += i;
        result += "n";
    }
    return result;
}

int main() {
    ofstream file;
    file.open("example.txt");
    if (file.is_open()) {
        std::cout << "File Open Access n";
    }
    file << "Write this to the file";
    file << addingtext();

    file.close();

    return 0;
}

选项2:制作addingtext()写入到文件中:

#include <iostream>
#include <fstream>
using namespace std;

void addingtext(ofstream& o) {
    for (int i = 0; i < 8; ++i)
    {
        std::cout << i << endl;
        o << i << endl;
    }
}

int main() {
    ofstream file;
    file.open("example.txt");
    if (file.is_open()) {
        std::cout << "File Open Access n";
    }
    file << "Write this to the file";
    addingtext(file);

    file.close();

    return 0;
}


以上是如何将函数的结果写入文件C++的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>