私は迅速にlibxml2とインターフェースしており、C APIバインディングは(まだ)UnsafePointer<Int8>!
c文字列を生成します。一方、Swift API は通常UnsafePointer<UInt8>!
.
だから私の質問は - 文字列を適切な方法で null で終わる C 文字列にしていますか?
let cfilePath = unsafeBitCast(myStringString.nulTerminatedUTF8.withUnsafeBufferPointer { $0.baseAddress }, to: UnsafePointer<Int8>.self)
UInt8
代わりに、バイトをバイトとして解釈して Swift 型チェックをバイパスするのではなく、他の方法を使用することを好むべきInt8
ですか?