У меня есть небольшая проблема в Blitzmax.Я пытаюсь прочитать INI-файл, и если я читаю числа с плавающей точкой, они конвертируются очень странным образом.Соответствующая строка в файле выглядит так, например:
_fStrength=40.6
Вывод выглядит так:
DebugLog:_fStrength: 40.5999985
Код, который я использую для чтения, работает с отражениеми выглядит так:
For Local fld:TField = EachIn id.EnumFields()
fld.Set(obj, SearchInFile("TempWeapon" + index, fld.Name(), "Weapons.ini"))
DebugLog(fld.Name() + ": " + String(fld.Get(obj)))
Next
Я узнал, что это происходит только в том случае, если число после "."не равно 5 или 0. Я не могу объяснить это поведение, потому что, если я не использую отражения, оно работает нормально.
Может кто-нибудь помочь мне, пожалуйста?