我有一个与C库进行互操作的Swift程序。这个C库返回一个内部有char[]
数组的结构,如下所示:
struct record
{
char name[8];
};
定义已正确导入Swift。但是,该字段被解释为8个Int8
元素(类型为(Int8, Int8, Int8, Int8, Int8, Int8, Int8, Int8)
)的元组,我不知道如何使用Swift将其转换为String
。
没有接受Int8
元组的String
初始化器,而且似乎不可能获得指向元组的第一个元素的指针(因为类型可以是异构的,这并不奇怪)。
现在,我最好的想法是创建一个小的C函数,它接受指向结构本身的指针,并将name
作为char*
指针而不是数组返回,并使用该函数。
然而,有没有完全快速的方法呢?
https://stackoverflow.com/questions/27455773
复制相似问题