我想创建一个C++程序来将随机数生成到一个文件中

我正在制作一个 C++ 程序来生成一百万个随机数(我已经将它们生成为一次 cout 输出,所以我有处理能力)并且我想将它们写入一个文件中。

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

int main() {
    srand(time(NULL));
    int value;
    ofstream file ("numbers.txt");
    file.open ("numbers.txt", ios::out | ios::app );
    int i = 0;
    while (i < 1000000)
    {
        value = rand(); 
        file << value;
    }
    file.close();
    
}

这是我当前的代码,我没有收到任何错误,但是当我运行它时,我在文件资源管理器中看到一个空的 txt 文件。谁能告诉我这里有什么问题?

我只尝试了 100 个号码,却得到了一个空白文本文件

回答

不要重新打开同一个文件:

...
ofstream file ("numbers.txt");
file.open ("numbers.txt", ios::out | ios::app ); // Remove this line
int i = 0;
...

这将使它起作用。但是,程序永远不会停止,因为您也忘记了递增i

  • `file.close();` is unnecessary for a similar reason.

以上是我想创建一个C++程序来将随机数生成到一个文件中的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>