Swift3-如何转换UnsafemtableBufferPointer<;CChar>;指向非女性化指针<;utsname>;

Swift3-如何转换UnsafemtableBufferPointer<;CChar>;指向非女性化指针<;utsname>;,swift,swift3,Swift,Swift3,我正在将Swift 2.x项目迁移到Swift 3 在Swift 3语法中,我无法将UnsafeMutableBufferPointer转换为UnsafeMutablePointer Swift 2.x: (ptr: inout UnsafeMutableBufferPointer<CChar>) -> DeviceTypes in uname(UnsafeMutablePointer<utsname>(ptr.baseAddress)) (ptr

我正在将Swift 2.x项目迁移到Swift 3

在Swift 3语法中,我无法将
UnsafeMutableBufferPointer
转换为
UnsafeMutablePointer

Swift 2.x

(ptr: inout UnsafeMutableBufferPointer<CChar>) -> DeviceTypes in
        uname(UnsafeMutablePointer<utsname>(ptr.baseAddress))
(ptr:inout UnsafeMutableBufferPointer)->中的设备类型
uname(不可配置指针(ptr.baseAddress))

Swift 3:

(ptr: inout UnsafeMutableBufferPointer<CChar>) -> DeviceTypes in

        guard let pointer = ptr.baseAddress?.withMemoryRebound(to: utsname.self, capacity: 1, { ptr in
            return ptr
        }) else {
            return DeviceTypes.unrecognized
        }
        uname(pointer)
(ptr:inout UnsafeMutableBufferPointer)->中的设备类型
guard let pointer=ptr.baseAddress?.withMemoryRebound(to:utsname.self,容量:1,{ptr in
返回ptr
})否则{
返回设备类型。无法识别
}
uname(指针)

Swift 3:

(ptr: inout UnsafeMutableBufferPointer<CChar>) -> DeviceTypes in

        guard let pointer = ptr.baseAddress?.withMemoryRebound(to: utsname.self, capacity: 1, { ptr in
            return ptr
        }) else {
            return DeviceTypes.unrecognized
        }
        uname(pointer)
(ptr:inout UnsafeMutableBufferPointer)->中的设备类型
guard let pointer=ptr.baseAddress?.withMemoryRebound(to:utsname.self,容量:1,{ptr in
返回ptr
})否则{
返回设备类型。无法识别
}
uname(指针)

你的问题是什么“我有问题”?你试过@user28434吗?是的,但我不知道如何使用withMemoryRebound生成等效代码你的问题是什么“我有问题”?你试过@user28434吗?是的,但我不知道如何使用withMemoryRebound生成等效代码