swift - 如何在 Swift 中获取 CString (UTF8String) 的长度?

标签 swift c-strings string-length

我有一个 CString

let parameterCString = (parameter as NSString).UTF8String

现在我想找到我想使用的parameterCString的长度

let UTF8parameter  = NSData(bytes: parameterCString, length: )

这是否也意味着相同

let UTF8parameter:NSData = parameter.dataUsingEncoding(NSUTF8StringEncoding, allowLossyConversion: false)!

最佳答案

您可以使用 strlen() 函数。

let aString:String = "myString"
let aCString = aString.cStringUsingEncoding(NSUTF8StringEncoding)
let length = strlen(aCString)// returns a UInt
let UTF8parameter = NSData(bytes: aCString, length: length)

关于swift - 如何在 Swift 中获取 CString (UTF8String) 的长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30632090/

相关文章:

java - 限制点后的字符 - java

ios - Swift UIImageView 始终为空

Swift 3 'CGContextAddArc' 不可用 : Use addArc(center:radius:startAngle:endAngle:clockwise:)

c++ - C++ 中的 StringStream/c_str() 损坏

c++ - 在 C++ 中检查字符串的长度和字母

python - 如果 len(list) 不能被 3 整除,则排除函数中的最后一项。 python 2.7.1

ios - 在 xcode 中使用 swift 设置文本字段的填充

ios - 如何在 swift iOS 中为跟随 JSON 响应制作模型类

c++ - 是否可以使用 ADO 和 C++ 从 SQL 存储过程中获取 CString 返回值(例如名称)的值

c - 为什么在写入使用字符串文字初始化的 "char *s"而不是 "char s[]"时出现段错误?