【发布时间】:2016-08-30 14:22:59
【问题描述】:
我意识到rand() 可以生成的最大数字是 32767。无论如何我可以在没有外部库的情况下生成值在 1 到 10^6(100 万)之间的随机数吗?
【问题讨论】:
-
如果你会使用C++11,en.cppreference.com/w/cpp/numeric/random
-
你使用(古代)16位平台吗?
-
1) 生成一个 1 或 2 的数字。 2) 如果是 1,则生成一个介于 1 和 10 之间的数字,如果是 2,则生成一个介于 1 和 10 之间的数字并加上 10.3) 泛化对于更大的数字
-
@JacekCz,例如任何 MSVC
-
@RiaD 我很惊讶,但是是的。C stdlih.h rand() 意见不佳,使用现代(如答案)