为什么rand()给出相对接近的数字?

时间:2019-02-21 10:19:52

标签: c++ function random

我在C ++中使用rand()函数,但是每次我的代码都得到非常接近的数字

int pickrandom(){
  time_t t;
  time(&t);
  srand (t);
  return rand();
}

我得到的数字是:13809 13812 13812 13817

1 个答案:

答案 0 :(得分:4)

您是seeding个随机生成器,每个pickrandom调用都违反了播种的目的。另外,rand是一种低质量的生成器,已被C ++ 11 <random>库所取代-您应该改用它。