Я пишу парсер MsgPack в Swift, чтобы изучить язык. Он не очень хорошо подходит для этой задачи, но я добился прогресса. Теперь я попал в блок, где я не могу убедить его преобразовать 4 байта в float.
var bytes:Array<UInt8> = [0x9A, 0x99, 0x99, 0x41] //19.20000
var f:Float = 0
memccpy(&f, &bytes, 4, 4)
print(f)
На игровой площадке я получаю:
фатальная ошибка: невозможно развернуть Необязательный. Выполнение игровой площадки не выполнено: ошибка: выполнение прервано, причина: EXC_BAD_INSTRUCTION (код = EXC_I386_INVOP, субкод = 0x0).
Любые идеи, что попробовать дальше?