Воскресенья, 21 ноября 2010
iPhone:% (в процентах) в NSString
Как сделать знак процента в NSString? Внедрение самой% заставит NSString пытается разобрать, но будет ждать знака "после", которая позволит ему определить тип. Поскольку ни один не найден, он не проявляет никаких признаков на месте. Специально подготовленные для этой задачи, следовательно,%%, что решает проблему.
Связанные записи
Вы можете следить за ответами к этой записи через ленту RSS 2.0 . Вы также можете написать свой комментарий , или ссылку на этот пост на вашей странице.



















































Это Printf формате
многие новички в августе над головой этот процент, потому что выходят на проход в книге С. знак процента -% - это управляющий символ в строке формата. процентов для каждого персонажа найдены в формате строки взяты из стека, который является длина целочисленного аргумента. Для каждого знака процента обнаружили есть пространство прекращено строка, которая определяет интерпретацию аргумента получены.
Двойные строки в формате процента ("%%") преобразуется в один знак процента в Printf функции. Кроме того, последовательности C (в пересчете на уровне компилятора), обратный слэш (\) является элементом управления, который позволяет вставлять любые символы ASCII набор. Позволяет вставить обратную косую черту последовательность та же - "\ \".
Printf формат выглядит следующим образом:% [параметр] [флаги] [ширина] [Precision.] [Длину] тип
Самым важным и единственным обязательным параметром является "тип"
г, а для печати целое число в виде целого десятичного числа. '% D' и '% я' являются синонимами для вывода, но отличаются При использовании Scanf () для ввода.
Печать в десятичное без знака Int.
F, F печати двойной в нормальном (с фиксированной точкой) обозначение. 'F' и 'F' отличается только тем, как струны для бесконечного числа или NaN печатаются ('Ы', 'бесконечность' и 'нан "за" е "," INF "," Бесконечность "и" НАН "для 'F').
е, E Печать двойное значение в стандартной форме ([-] d.ddd е [+ / -] DDD). E преобразование использует букву E (а не электронной) для отображения экспоненты. Экспонента всегда содержит по крайней мере, две цифры, если значение равно нулю, экспонента 00th В Windows показатель состоит из трех цифр, по умолчанию, например, 1.5e002, но это может быть изменена _set_output_format Microsoft конкретные функции.
G, G печати двойной в любом нормальном или экспоненциальное представление, в зависимости от того является более подходящей для его величины. 'G' использует строчные буквы, 'G' используется верхний регистр букв. Этот вид немного отличается от нотации с фиксированной запятой в незначительна, что нули справа от десятичной точки не включены. Кроме того, десятичная точка не входит в целых числах.
х, печать без знака Int как шестнадцатеричное число. 'X' использует строчные буквы и 'X' используется верхний регистр.
для печати неподписанных Int в восьмеричное.
Печать с символьной строки.
в печати символ (символ).
Печать с пустотой * (указатель на void) в реализации определенного формата.
п. печати ничего, но писать число символов успешно записан до сих пор в целое число параметров указателя.
% Распечатать буквальный знак '%' (этот тип не несет флаги, ширину, длину или точность).
Вам нужно немного бдительности printf'em использовании, потому что это механизм, где новичок может стрелять в ногу.
niesanityzowanych передачи данных, когда пользователь открывает уязвимость формата строки для атаки.
Распространенная ошибка заключается в следующем:
Е (ciag_od_uzytkownika);
Правильный синтаксис:
Е ("% S", ciag_od_uzytkownika);
или
puts (ciag_od_uzytkownika);