Безопасный и действительный способ преобразования "целого числа с плавающей точкой" в натуральное целое число? - PullRequest
0 голосов
/ 26 августа 2009

У меня есть CGFloat, который содержит только «целые числа», в том смысле, что он на самом деле хочет представлять только целые числа, но из-за неточности с плавающей точкой может случиться так, что он внутри имеет 23.00000000000000000000000142 или что-то в этом роде. Я пытаюсь передать NSDecimalNumber чистым вводом, поэтому мне нужно убедиться, что это действительно голое целое число без грязи. Ну, я думаю, что это хороший способ, но, возможно, я ошибаюсь:

NSInteger * intVal = floatVal;

Что бы избавиться от этих осколков в конце рассказа, верно? Или есть более безопасный способ преобразовать его в истинное целое число?

1 Ответ

0 голосов
/ 26 августа 2009

Если вы просто хотите взять целую часть числа с плавающей запятой, то я считаю, что вы можете просто сделать следующее:

CGFloat myfloat = 23.0000000000142f;
int myInt = (int) myfloat;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...