【发布时间】:2013-09-28 23:18:21
【问题描述】:
我是编程新手。
我想知道 rand() 的确切作用。
搜索只会产生有关其用法的示例。但是没有人解释函数如何生成随机数的每一步。他们将 rand() 视为黑盒。
我想知道 rand() 在做什么;每一步。
是否有资源可以让我准确了解 rand() 的作用? 这都是开源的东西不是吗?没有来源我就去拆机了。
我知道它会返回一个随机数,但它是如何生成该数字的?我想看看每一步。
谢谢。
【问题讨论】:
-
你关心什么系统?大概有多少环境就有多少实现。
-
您的编译器可能有可用的运行时库源。那里可能可以找到实现。
-
rand 使用伪随机生成器,因此阅读 PRNG 背后的理论比任何源代码都更有启发性
-
This paper 是经典之作,并不难理解,它涵盖了基础知识,尽管按照现代标准来看它是原始的。 (但
rand()也是如此。)