Я пытаюсь преобразовать строку в float, но она изменяет десятичные значения. например у меня есть строка:Преобразование String в Float или двойное значение меняет десятичные значения
NSString *str = @"33.641832";
float value = [str floatValue]; //33.6418304
значение дают мне 33.6418304
вместо 33.641832
. Я хочу преобразовать точно так же, как в строке.
Число фактически хранится в двоичном, а не в десятичном значении. –
@SimonByrne Ха? Ты серьезно? – Droppy
@SimonByrne да, очевидно, но это хранилище на 4 байта: 1 бит для знака, 8 для значения exp (base) и 22 бит для значащей цифры. Дополнительная информация: https://en.wikipedia.org/wiki/Single-precision_floating-point_format. –