C++ C++;随机函数返回相同的数

C++ C++;随机函数返回相同的数,c++,random,C++,Random,我试图得到0到3之间的随机数。使用此类代码: #include <cstdlib> int index = rand() % 3; #包括 int index=rand()%3; 但总是得到同样的结果:10101 我做错了什么?总是一样的数字。结果应在每次编译后或运行时更改其值? #include <ctime> srand(time(NULL)) #包括 srand(时间(空)) 在节目开始时 这将在每次基于当前时间运行程序时生成一个新种子 结果应该在每次编译

我试图得到0到3之间的随机数。使用此类代码:

#include <cstdlib>
int index = rand() % 3;
#包括
int index=rand()%3;
但总是得到同样的结果:
10101

我做错了什么?总是一样的数字。结果应在每次编译后或运行时更改其值?

#include <ctime>
srand(time(NULL)) 
#包括
srand(时间(空))
在节目开始时

这将在每次基于当前时间运行程序时生成一个新种子

结果应该在每次编译后或运行时更改其值

实际上,不,对于给定的种子,结果应该是相同的,如果不使用
srand()
显式设置种子,则每次运行时的结果都是相同的。为了每次都能得到不同的结果,你应该使用一些不完全确定的东西来设定种子,比如时间(不确定的意思是你不知道在设定种子的那一刻的确切时间)