C++生成0到100,000之间的随机数

Med*_*000 3 c++ random solaris g++

做这个的最好方式是什么?我的编译器显示RAND_MAX = 32,767.所以我很好奇如何获得0到100,000之间的均匀随机生成值?

teh*_*atz 10

我会把juanchopanza的评论放到答案中.

<random>如果您的编译器提供它,请使用标头(C++ 11).

std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(0, 10000);

std::cout << dis(gen) << std::endl;
Run Code Online (Sandbox Code Playgroud)