Есть ли способ поместить полученные данные UDP в массив в структуре? - PullRequest
0 голосов
/ 22 мая 2019

Я получаю данные из UDP и по структуре делаю их читаемыми для следующего использования.

struct Signal {

let id : Int
let strenght : Float
let info1 : Float
let info2 : Float
let nextData : Float
}

чтение с использованием

var s : Signal?

    dataTest.withUnsafeBytes({(bytes: UnsafePointer<Signal>)->Void in
        s = UnsafePointer<Signal>(bytes).pointee
    })

и все работает просто отлично.

Но есть ли способ изменить info1 и info2 в массив?

Я пробовал это:

struct Signal {

let id : Int
let strenght : Float
let info = Array<Float?>(repeating: nil, count: 2)
let nextData : Float
}

но я получаю ошибку EXC_BAD_ACCESS.

в C # Я использую это

[MarshalAs(UnmanagedType.ByValArray, SizeConst = 2)]
    public float[] info;

и работал отлично, но я не могу найти выход в Свифте.

...