Получить указатель на массив символов C в Swift
Имеем такую структуру (определена в bson.h драйвера mongodb c):
typedef struct
{
uint32_t domain;
uint32_t code;
char message[504];
} bson_error_t;
В Swift у меня есть указатель на эту структуру:
err: UnsafePointer<bson_error_t> = ...
Теперь, что бы я ни делал, я не могу преобразоватьmessage[504]
(который Swift видит как кортеж (Int8, Int8, Int8, ... 504 раза))char*
использовать его в String.fromCString (). Возможно ли это сделать в Swift? В качестве временного решения я создал вспомогательную функцию C в отдельном.c
файл, который занимаетerr *bson_error_t
и возвращаетсяchar*
, но это странно, если Swift не может сделать это сам по себе.