I have a c api that returns a null terminated string that is an array of type
In Swift 3,
String has two initializers
public init(cString: UnsafePointer<CChar>) public init(cString: UnsafePointer<UInt8>)
therefore it can be created from (null-terminated) sequences of both signed and unsigned characters. So
let s = String(cString: yourCharPointer)
should just work.