我正在 Visual Studio 2010中使用win32应用程序
我想生成两个32位随机数,必须大于999999,我是如何实现它的
答案 0 :(得分:4)
您可以随机使用C ++ 11:
http://en.cppreference.com/w/cpp/numeric/random
std::random_device rd;
std::uniform_int_distribution<int32_t> dist(10000);
std::cout << dist(rd) << std::endl;
我没有在MSVC ++中开发,所以我希望它已经支持这些;)
答案 1 :(得分:1)
Rand函数返回0到RAND_MAX之间的整数,保证至少为32767
首先播种rand函数并调用rand。
#include <stdlib.h>
srand(0);
long int r = 999999 + (long int)((double)rand()/(double)RAND_MAX * (LONG_MAX - 999999 + 1)) ;
如果999999是你的最小值,首先在[0; 1]之间缩放兰特输出,现在缩放到新范围[0; LONG_MAX-999999]并转移到[999999; LONG_MAX]加入999999。