使用Swift在struct中设置值

时间:2017-07-11 18:25:37

标签: swift string struct dylib

我读了一些不错的文章,提示和答案(这里),但我没有采用这种解决方案,并将其放在我的源代码中:(

我需要调用dylib中提供的用C编写的函数。没有结构它工作正常。

typedef struct
{
    uint32_t version;
    OtherType handle;
    const char *pin;
    const char *otherCode;
} cryptParameter;

我的工作代码不是:

var cryptParam = cryptParameter (
  version: 2,
  Handle: cert,
  pin: "123456",
  otherCode: nil
)

我的问题是使用Swift String值设置const char*123456不会保存在引脚中。 (它编译,运行,但价值不正确123456)

谢谢你的回答!

1 个答案:

答案 0 :(得分:0)

谢谢:此代码有效(仅限此位置,但有效!)

let cStringValue = "123456".cString(using: .utf8)
cryptParam.pin = UnsafePointer<Int8>(cStringValue)