Директивы флагов
В спецификации формата первое необязательное поле — flags. Директива флага — это символ, определяющий основание вывода и вывод знаков, пробелов, ведущих нулей, десятичных запятых и восьмеричных и шестнадцатеричных префиксов. Несколько директив флага могут появляться в спецификации формата, и флаги могут размещаться в любом порядке.
Символы флагов
Flag |
Значение |
По умолчанию |
---|---|---|
– |
Выравнивание результата в поле заданной ширины по левому краю. |
Выравнивание по правому краю |
+ |
Использование знака (+ или -) как префикс выходного значения, если оно имеет тип со знаком. |
Отображение знака только для отрицательных значений (-). |
0 |
Если width предшествует префикс 0, начальные нули добавляются до тех пор, пока не будет достигнута минимальная ширина. Если и 0, и – присутствуют, 0 игнорируется. Если 0 указывается как формат целого числа (i, u, x, X, o, d) и присутствует спецификация точности, например, %04.d, — 0 игнорируется. |
Без заполнения. |
пробел (' ') |
Использование пробела в качестве префикса выходного значения, если оно знаковое и положительное. Пробел игнорируется, если присутствуют и пробел, и флаг +. |
Нет пробелов. |
# |
При использовании с форматами o, x или X, флаг # использует 0, 0x или 0X соответственно как префикс любого отличного от нуля выходное значения. |
Нет пробелов. |
|
При использовании с форматами e, E, f, a или A флаг # требует присутствие десятичной запятой в выходном значении. |
Десятичная запятая отображается, только если за ней следуют цифры. |
|
При использовании с форматами g или G, флаг # требует присутствие десятичной запятой в выходном значении и предотвращает усечение хвостовых нулей. Игнорируется при использовании с c, d, i, u или s. |
Десятичная запятая отображается, только если за ней следуют цифры. Нули в конце усекаются. |
См. также
Ссылки
printf, _printf_l, wprintf, _wprintf_l