【问题标题】:What is the equivalent of uint8_t in swift?swift 中的 uint8_t 等价物是什么?
【发布时间】:2015-07-26 10:44:17
【问题描述】:

在 obj-c/c++ 框架中有一个方法需要一个 uint8_t 和一个常规的 int

- (bool)push:(uint8_t *)buf length:(int)len;

我使用了一个桥接器文件来访问此方法,但是当我使用 UInt8Int 快速调用它时,我收到以下错误:

无法使用类型为“(UInt8,长度:Int)”的参数列表调用“push”

我怎样才能让它工作?

【问题讨论】:

    标签: c++ objective-c swift type-conversion


    【解决方案1】:

    该方法需要一个指向UInt8 类型元素数组和Int32 值的指针。你可以这样做:

    var buffer: [UInt8] = [0, 1, 2]
    yourObject.push(UnsafeMutablePointer<UInt8>(buffer), length: Int32(buffer.count))
    

    在这里查看如何处理指针:https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/InteractingWithCAPIs.html

    【讨论】:

      猜你喜欢
      • 2014-09-24
      • 2014-07-31
      • 1970-01-01
      • 2014-08-12
      • 2014-08-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多