0

我是 C++ 新手(用于编写 C# 代码),我只是不知道如何在 Visual Studio C++ 表单环境中创建随机数。这是我使用的代码:

int randNumber;
srand(time(NULL));
randNumber = rand();
MessageBox::Show(randNumber.ToString());

我只是将该代码放入 form_load 块中。

我得到的错误信息是:

错误 C3861:“时间”:未找到标识符

错误 C3861:“rand”:未找到标识符

编辑 :

我确实将包含在我的 Form1.h 文件中,如下所示:

#pragma once

#include <cstdlib>
#include <ctime>

namespace Srand {

这似乎可行,但是随机数非常奇怪。

3100 3130 3146 3169 3192 3208 3231 3250 3270 3286

看起来一点也不随机,只是随机变大。

4

3 回答 3

1

您必须包含相应的标题,例如

#include <ctime> /* for time */

#include <cstdlib> /* for rand */

请参见此处rand此处。_time

于 2013-04-03T07:15:05.037 回答
0

你需要#include <cstdlib>#include <ctime>

于 2013-04-03T07:15:11.760 回答
0

因为你的数字是时间相关的,你会得到非常接近的结果。你可以尝试通过对 time() 应用一些变换来随机化你的数字,比如首先乘以一个非常大的数字,然后对一些大素数取 mod。

于 2013-04-03T10:27:28.423 回答