Chapter 27. Formatted Printing

printf and sprintf format a list of values according to a format string that may use the following conversions:

%%

A percent sign.

%b

An unsigned number (binary).

%c

The character corresponding to the ordinal value.

%d

A signed integer.

%e

A floating-point number (scientific notation).

%f

A floating-point number (fixed decimal notation).

%g

A floating-point number (%e or %f notation).

%i

A synonym for %d.

%n

The number of characters formatted so far is stored into the corresponding variable in the parameter list.

%o

An unsigned integer, in octal.

%p

A pointer (address in hexadecimal).

%s

A string.

%u

An unsigned integer (decimal).

%x

An unsigned integer (hexadecimal).

%D

An obsolete synonym for %ld.

%E

Like %e, but using an uppercase E.

%F

An obsolete synonym for %f.

%G

Like %g, but with an uppercase E (if applicable).

%O

An obsolete synonym for %lo.

%U

An obsolete synonym for %lu.

%X

Like %x, but using uppercase letters.

The following flags can be put between the % and the conversion letter:

space

Prefix a positive number with a space.

+

Prefix a positive number with a plus sign.

Left-align within the field.

0

Use zeroes instead of spaces to right-align.

#

With o, b, x, and X: prefix a nonzero number with 0, 0b, 0x, or 0X.

number

Minimum field width.

.number

For a floating-point number, the number of digits after the decimal point. For a string, the maximum length. For an integer, the minimum width.

h

Interpret integer as short or unsigned short according to the C type.

l

Interpret integer as long or unsigned ...

Get Perl Pocket Reference, 4th Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.