首页 > 解决方案 > swift 5 data.withUnsafeBytes

问题描述

斯威夫特 4 代码:

self.dataArray = data.withUnsafeBytes {
                    [UInt16](UnsafeBufferPointer(start: $0, count: data.count))
                }

通过查看类似问题的其他答案,我将上述内容更改为:

self.dataArray = data.withUnsafeBytes {$0.load(as: [UInt16].self)}

代码编译但给了我一个例外:EXC_BAD_ACCESS (code=EXC_I386_GPFLT)

有任何想法吗?谢谢

标签: swift

解决方案


感谢 Martin R。我的问题的答案是:

data.withUnsafeBytes{ Array($0.bindMemory(to: UInt16.self))}

推荐阅读