保存在txt(c ++)中调用for循环的函数的输出

时间:2017-10-28 11:47:39

标签: c++ save

我在for循环中调用下面的函数。在每次迭代中,它会在终端中打印一些数字。数字按距离分开。我想在txt文件中写入数字,以便在程序运行完全后,我可以访问txt文件中的所有数字。这是我的功能:

void printComponents(Components const& cc) 
    {
    auto id = 0;
    for (auto& c : cc) {
        int counter=0;
        for (auto v : c) 
            {
             counter ++;
             }   
        if (counter >1)
            {
            std::cout << " " << counter;     
            }
                         }
     }

如何在txt文件中按顺序保存数字?

1 个答案:

答案 0 :(得分:0)

您在函数中添加了另一个参数std::ostream& out

void printComponents(Components const& cc, std::ostream& out)  {
     // ...
}

并将std::cout替换为out

out << " " << counter;  

然后打开一个文本文件并将其传递给您的函数

std::ofstream file("MyFile.txt");
for(...) {
    printComponents(components,file);
}