たまにしか出会わないシチュエーションだからこそ書き残す。
Birdging-Headerを用意するのはObjective-CをSwiftから使う場合と同様。
コメントにて指摘頂きました。サンプルコードを書き直しました。(2017/1/12)
int getPath(char* buff, CFIndex maxPathSize);
こんなC言語の関数を呼び出す場合は以下のようにする。
var buffer = UnsafeMutablePointer<Int8>.allocate(capacity: Int(MAXPATHLEN))
getPath(buff, CFIndex(MAXPATHLEN))
let str = String(cString: buff)
print(str)
...
buffer.deallocate(capacity: Int(MAXPATHLEN))