printf output format

Source: Internet
Author: User

printf output format
The general form of a format string in C is:%[flag [output minimum width] [. precision] [length] type, where the entry in square brackets [] is optional. The meanings of the items are described as follows:
1. Type type character is used to represent the type of output data, its format character and meaning are shown in the following table:
Represents the format character format character meaning of the output type
A floating-point number, hexadecimal digit, and P-count method (C99)
A floating-point number, hexadecimal digit, and P-count method (C99)
C Output Single character
D output signed integers in decimal form (positive numbers do not output symbols)
E output single, double-precision real numbers in exponential form
E output single, double-precision real numbers in exponential form
F output single, double-precision real numbers in decimal form
G output single, double-precision real numbers with shorter output widths in%f%e,%e format when exponent is less than 4 or greater than or equal to precision
G output single, double-precision real numbers with shorter output widths in%f%e,%e format when exponent is less than 4 or greater than or equal to precision
I signed decimal integer (same as%d)
o Output unsigned integers in eight binary form (do not output prefix O)
P pointer
S output string
x output unsigned integers in 16-binary form (not output prefix ox)
X output unsigned integers in 16-binary form (not output prefix ox)
U output unsigned integers in decimal form
2. Logo
The flag character is-, +, #, space, and 05, and its meaning is shown in the following table:
Flag format character flag meaning
-Results left-aligned, right-hand blanks
+ Output symbol (plus or minus)
The space output value is a positive-time space, minus the negative.
# No effect on C,s,d,u class, O class, prefix 0 on output, X class,
The output is prefixed with 0x or 0X, and the G,g class prevents trailing 0 from being deleted;
For all floating-point forms, #保证了即使不跟任何数字, also prints a decimal character
0 for all number formats, fill the field width with leading 0, if present-flag or specify precision (for integers), ignore

3. Output minimum width
A decimal integer that represents the minimum number of digits for the output. If the actual number of digits is greater than the defined width, the actual number of digits is output, or if the actual number of digits is less than the defined width, a space or 0 is provided.

Such as:
printf ("%-10e\n", 223.11);
printf ("%+10e\n", 232.11111111);

4. Accuracy
Precision format characters with "." Begins with a decimal integer followed by. The meaning of this item is: If the output number, then the number of decimal places, if the output is a character, the number of output characters, if the actual number of digits is greater than the defined number of precision, the section is truncated.

5. Length
The length format character is h,l Two, h means output by a short integer, l means output by a long integer quantity.

6. Special usage

The format for M.N can also be represented as follows (example)
Char ch[20];
printf ("%*.*s\n", m,n,ch);
The front of the * defines the total width, and the back defines the number of outputs. corresponding to the outer parameters m and n respectively.


There is also a special output format%n the length value of the output string can be assigned to a variable, see the following example:
int Slen;
printf ("111%n", &slen);
After execution, the variable is assigned a value of 3.

printf output format

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.