是否有替代rand()?因为rand()(至少对我而言)是非常糟糕的。所以如果你知道c ++中rand()的替代品,请告诉我。因为每次我运行这个简单的代码:
代码:
#include <iostream>
#include <cstdlib>
using namespace std;
void Gla()
{
int L;
L = rand();
while(1)
{
cout<<L<<endl;
}
}
int main()
{
Gla();
return 0;
}
它不断输出41,我不知道它为什么会这样做。
答案 0 :(得分:2)
这与rand()
无关。问题是代码为L
赋值,然后进入循环,多次写L
的{相同]值。请记住,一旦为变量赋值,它就会保留该值,直到您更改它为止。所以从
void Gla()
{
int L;
L = rand();
while(1)
{
cout<<L<<endl;
}
}
到
void Gla()
{
int L;
while(1)
{
L = rand();
cout<<L<<endl;
}
}
这样,每次循环都会更新L
的值。