Трюки / Документы Форматирования Строк - PullRequest
1 голос
/ 23 апреля 2010

Читал ответ Shaggy Frog на этот пост и был заинтригован следующей строкой кода:

NSLog(@"%@", [NSString stringWithFormat:@"%@:%*s%5.2f", key, padding, " ", [object floatValue]]);

Я знаю, что форматирование строк - это древнее искусство, но я вроде как заканчиваю программирование на Какао / Obj-C и пропустил несколько классов. Где хорошее (лучшее) место для изучения всех приемов форматирования строк, разрешенных в NSString stringWithFormat? Я знаком со страницей Apple String Format Specifiers , но, насколько я могу судить, она не проливает свет на то, что происходит с %*s или %5.2f (не говоря уже о 3 очевидных заполнителях, за которыми следуют на 4 аргумента) выше?!?

1 Ответ

1 голос
/ 23 апреля 2010

Документация -stringWithFormat ведет вас к Спецификатору формата строки , который, в свою очередь, отправляет вас к спецификации IEEE printf . Это столько информации, сколько вы когда-либо захотите.

Единственное заметное исключение:

% @

Объект Objective C, напечатанный как строка, возвращаемая descriptionWithLocale: , если доступно, или описание в противном случае. Также работает с CFTypeRef объектами, возвращающими результат CFCopyDescription функция.

  • ноль преобразуется в (ноль) , поэтому NSLog(@"%@", someObject) безопаснее NSLog("someObject). Позднее может произойти сбой, когда someObject равен nil :

Вас также может заинтересовать страница википедии о форматировании строк .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...