我在.h文件中有一個unsigned char
數組。並且,我還有一個函數將unsigned char數組作爲輸入。當我嘗試快速調用此函數時,它會得到UnsafeMutablePointer<UInt8>
。所以,自動對象C到SWIFT轉換器認爲unsigned char
應該被轉換爲UnsafeMutablePointer<UInt8>
。但是,我無法直接將我的變量傳遞給此函數。因爲我得到了,將unsinged char數組從目標c轉換爲UnsafeMutablePointer <UInt8> swift
Cannot convert value of type '(UInt8, UInt8, UInt8, UInt8, UInt8)' to expected argument type 'UnsafeMutablePointer<UInt8>!'
這個數組的長度是靜態的。所以,我可以通過KEY.0
,KEY.1
創建
let key = UnsafeMutablePointer<UInt8>.allocate(capacity: 64);
和,還我可以得到價值...等,所以,我需要的是創造一個for循環從KEY
讀取值並將其分配給key
for index in 1...64 {
key[index] = KEY[index];
}
但是,這給了編譯錯誤爲:
Value of tuple type '(UInt8, UInt8, UInt8, UInt8, UInt8)' has no member 'index'
所以,第一個問題,我如何從得到任何價值按索引。二是,有沒有一個unsigned char
數組轉換爲UnsafeMutablePointer<UInt8>