I need generate random numbers in my iPhone game. I using rand() function. But it isn't enough random. I tried using srand with time(Null). But my random generator was periodic. /dev/random isn't an answer because I need new random number each 0.1 sec.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
On iOS and OS X, use arc4random instead. Higher quality randomness, and no need to worry about seeding.
However, rand()
shouldn't be noticably periodic, unless you're calling srand
each time around. Or using the random numbers incorrectly.
回答2:
You could try random() / srandom() instead. Better generator than rand() / srand().
回答3:
Are you building for debug or on the simulator? I know I ran into this kind of issue when building some windows applications in debug, the RNG was automatically seeded with a constant value to produce consistent results. You may want to check what it is actually seeded with, and if you are getting different outputs at all each run.