我知道import CoreFoundation
提供了像vscanf()这样的C函数。所以我可以使用withUnsafePointer(&n){vscanf("%d",getVaList([COpaquePointer($0)]))}
。
但是,在开源版本中,根据stdlib / public / core / VarArgs.swift,我看到#if _runtime(_ObjC)
,这意味着getVaList()仅在OSX版本上可用。
你能告诉我使用vscanf / scanf等的替代方法吗?
注意:我知道NSString(data:stdIn.availableData。 encoding:NSUTF8StringEncoding)
和NSScanner组合,但我不愿意使用availableData
(又名.readAll)的东西。这些替代方法也很受欢迎。
答案 0 :(得分:0)
最后我能够修改VarArgs.swift以在Linux上实现withVaList(),至少(请检查代码部分)。 http://qiita.com/cielavenir/items/2598d47b97a7c9caf970