wir*_*her 3 c++ random android noise-generator
我正在尝试使用c4droid IDE为Android终端编写一个随机生成的世界的简单ASCII风格游戏.它有C++支持,基本上我正在array[width][height]使用规则rand()%2 - 1生成可用的瓷砖,0是墙.但是有问题.每当我'随机'生成地图时,它看起来都是一样的 - 因为rand()它不是真正随机的.我听说过使用HDD或其他部件创建的熵.问题是我在android上使用它因此对我来说很难实现,因为C++没有像Java一样使用,所以我在谷歌上找不到解决方案.如此简短的问题:如何在Android上使用c ++生成"非常真实"的随机数?
Syn*_*ose 10
你需要播种你的随机数发生器srand(time(NULL)).这允许计算机使用系统时间来提出伪随机数.
参考链接:http://www.cplusplus.com/reference/clibrary/cstdlib/srand/
编辑:你可能会明智地注意到你只需要为rand()函数播种一次,通常是在程序的开头.
int main()
{
srand(time(NULL)) //only needed to be called ONCE
//code and rand functions afterward
}
Run Code Online (Sandbox Code Playgroud)