
这是我正在调用的C函数:
artnet_node artnet_new(const char *ip,int verbose) { ... 如何将Swift字符串转换为此const char类型?当我像这样传递ipAddress时,它可以工作:
internal var ipAddress = "192.168.1.43"
但是当我像这样传递时,dit不起作用
internal var ipAddress:String = "192.168.1.43"
我需要在一个需要指定类型的函数中使用它:
internal func setupArtnode(ip:String) -> Int{ 我尝试使用AnyObject而不是String,但这也不起作用.
谢谢.
您应该能够将String直接传递给期望const char *的C函数,并且它将自动转换为以null结尾的UTF-8字符串:let string = "string"let node = artnet_new(string,1)
有关更多信息,请参见Interacting with C APIs .以下是相关摘录:
总结When a function is declared as taking an UnsafePointer argument,
A String value,if Type is Int8 or UInt8. The string will automatically be converted to UTF8 in a buffer,and a pointer to that buffer is passed to the function.
it can accept any of the following:
以上是内存溢出为你收集整理的从Swift字符串转换为const char *全部内容,希望文章能够帮你解决从Swift字符串转换为const char *所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)