0
我正在开发iphone应用程序,它在viewDidLoad中调用arc4random来获取随机数。我的问题是每次应用程序启动时,都会从arc4random获得相同的编号。我应该指出,当我在iPhone设备上测试应用程序并从设备触摸屏启动应用程序时,我会看到这种行为。如果我从xcode的设备上运行应用程序,然后我看到不同的随机数。arc4random始终在应用程序启动时返回相同的初始值
任何帮助或建议,将不胜感激。谢谢。
'arc4random'应该自动播种,这就是为什么没有明确的种子功能。事实上,你永远不应该看到这种行为。你可以发布一些代码吗? – 2013-05-03 10:07:35
为了完整起见,代码行是“int chosen_book =(arc4random()%numberOfBooks)+ 1;” (其中numberOfBooks也是一个值为66的int) – 2013-05-03 10:09:24
此代码是否仅在应用程序启动时运行?如果应用程序未终止但在后台运行,则应用程序:didFinishLaunching :(例如)将不会被后续调用,而Xcode将在运行之前强制终止。 – 2013-05-03 10:20:13