相关疑难解决方法(0)

生成0到1之间的随机浮点数

我正在尝试生成一个介于0和1之间的随机数.我一直在阅读arc4random(),但是没有关于从中获取浮点数的任何信息.我该怎么做呢?

c random floating-point arc4random ios

82
推荐指数
5
解决办法
6万
查看次数

在这个例子中,0xFFFFFFFF是做什么的?

我知道arc4random返回一个无符号整数,最大为(2 ^ 32)-1.在这种情况下,它总是给出0到1之间的数字.

var x:UInt32 = (arc4random() / 0xFFFFFFFF)
Run Code Online (Sandbox Code Playgroud)

如何除以0xFFFFFFFF导致数字介于0 - 1之间?

swift swift2

6
推荐指数
1
解决办法
729
查看次数

无法扩展特定类型的通用结构

想在Swift3中添加一些糖玩具.基本上,我希望能够做到这样的事情:

let randomAdjust = (-10...10).random
Run Code Online (Sandbox Code Playgroud)

为此,我决定扩展ClosedRange.但后来发现它对我的情况可能会更好,我真的只是计划在现在做Int,使用CountableClosedRange.我最近的多次尝试看起来像:

extension CountableClosedRange where Bound == Int {
    var random:Int {
        return Int(arc4random_uniform(UInt32(self.count) + 1)) + self.lowerBound
    }
}
Run Code Online (Sandbox Code Playgroud)

但游乐场抱怨说:

error: same-type requirement makes generic parameter 'Bound' non-generic
extension CountableClosedRange where Bound == Int {
Run Code Online (Sandbox Code Playgroud)

我甚至都不知道它在那里告诉我什么.

swift3

0
推荐指数
1
解决办法
1574
查看次数

标签 统计

arc4random ×1

c ×1

floating-point ×1

ios ×1

random ×1

swift ×1

swift2 ×1

swift3 ×1