Initializer

init(cString:)

Creates a new string by copying the null-terminated UTF-8 data referenced by the given pointer.

Declaration

init(cString: UnsafePointer<UInt8>)

Discussion

This is identical to init(cString: UnsafePointer<CChar>) but operates on an unsigned sequence of bytes.

See Also

Converting a C String

init?(bytesNoCopy: UnsafeMutableRawPointer, length: Int, encoding: String.Encoding, freeWhenDone: Bool)

Produces an initialized String object that contains a given number of bytes from a given buffer of bytes interpreted in a given encoding, and optionally frees the buffer. WARNING: this initializer is not memory-safe!

init(cString: UnsafePointer<CChar>)

Creates a new string by copying the null-terminated UTF-8 data referenced by the given pointer.

init?(cString: UnsafePointer<CChar>, encoding: String.Encoding)

Produces a string containing the bytes in a given C array, interpreted according to a given encoding.

init<Encoding>(decodingCString: UnsafePointer<Encoding.CodeUnit>, as: Encoding.Type)

Creates a string from the null-terminated sequence of bytes at the given pointer.

static func decodeCString<Encoding>(UnsafePointer<Encoding.CodeUnit>?, as: Encoding.Type, repairingInvalidCodeUnits: Bool) -> (result: String, repairsMade: Bool)?

Creates a new string by copying the null-terminated data referenced by the given pointer using the specified encoding.