主页 > 其他  > 

SwiftCChar元祖转String

SwiftCChar元祖转String

iOS有些API是调用C函数,Swift端获得的数据是CChar元祖,需要转成String方便使用,下面的代码以获取手机型号为例

方式一

var systemInfo = utsname() uname(&systemInfo) let deviceModel = withUnsafePointer(to: systemInfo.machine) { tuplePointer in let cCharPointer = unsafeBitCast(tuplePointer, to: UnsafePointer<CChar>.self) let machine = String(utf8String: cCharPointer)! print("machine: \(machine)") return machine }

方式二

var systemInfo = utsname() uname(&systemInfo) let mirror = Mirror(reflecting: systemInfo.machine) let arr = mirror.children.map { $0.value as! CChar } let machine = String(cString: arr)

标签:

SwiftCChar元祖转String由讯客互联其他栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“SwiftCChar元祖转String