0

我的 Swift 代码中出现运行时错误:

EXC_BAD_INSTRUCTION (code=EXC_i386_INVOP, subcode=0x0)

在线:

y = height - (((val - minYval) / (maxYval - minYval)) * height)

在上下文中:

    let height:CGFloat = self.frame.height - yOffset
    let width = self.frame.width - xOffset - 50

    let num = CGFloat(keys.count)

    for var i = 0; i < keys.count; ++i {

        var y:CGFloat = (height/CGFloat(2.0))

        var val = CGFloat(values[i])

        println("height=\(height), val=\(val), minYval=\(minYval), maxYval=\(maxYval), y=\(y)")

        if CGFloat(maxYval - minYval) != CGFloat(0) {
            println("debug 1")
            y = height - (((val - minYval) / (maxYval - minYval)) * height)
        } else {
            println("x=\(x), y=\(y)")
        }

    }

输出:

height=193.5, val=355.0, minYval=355.0, maxYval=355.0, y=96.75

x=45.0, y=96.75

更新:添加了 minYval 和 maxYval 的值。

更新:我的声望 < 10,所以没有图像。

4

1 回答 1

0

解决方案

我注释掉了部分,直到我的程序成功完成。在缩小错误范围后(后来发生了很多很多行),我似乎一直在做一个糟糕的模 ( %) 操作。

希望这可以帮助。

于 2015-03-12T23:39:51.813 回答