Как напечатать отформатированный float в obj-c? - PullRequest
5 голосов
/ 03 марта 2012

Как напечатать float в Objective-C, например, 3.45 вместо 3.45555555555?

Ответы [ 2 ]

20 голосов
/ 03 марта 2012

Попробуйте отформатировать поплавок так:

NSLog(@"%.2f", myFloat);

Знак % означает, что он будет заменен соответствующим аргументом, следующим за (myFloat). .2 означает 2 десятичных знака, а f означает тип данных float.

Посмотрите здесь для более подробной информации.

Objective-C NSLog очень похож на C printf, за исключением того, что вы должны использовать строковый литерал Objective-C (@"…") и %@ для строк Objective-C (NSString с) вместо %s, что для "Plain C strings".

2 голосов
/ 03 марта 2012

Зависит от того, как вы его печатаете.Если вы хотите отобразить его в графическом интерфейсе (что, вероятно, является распространенным случаем для приложений Cocoa и Cocoa Touch), используйте NSNumberFormatter и установите для него два десятичных знака.Если вы печатаете его через NSLog () или printf (), вы будете использовать спецификатор формата вдоль строк "% .2f".

...