Ответ 1
Множество разных способов, в зависимости от того, как вы хотите обрабатывать символы, отличные от ASCII.
Но самым простым кодом будет использование представления utf8
:
let string = "hello"
let array: [UInt8] = Array(string.utf8)
Примечание. Это приведет к тому, что многобайтовые символы будут представлены в виде нескольких записей в массиве, то есть:
let string = "é"
print(Array(string.utf8))
выводит [195, 169]
Theres также .nulTerminatedUTF8
, что делает то же самое, но затем добавляет nul-character в конец, если ваш план должен передать это где-то в виде строки C (хотя, если вы это делаете, возможно, вы также можете использовать .withCString
или просто использовать неявное преобразование для мостовых функций C.