Home  >  Article  >  Backend Development  >  What is the long integer output format?

What is the long integer output format?

醉折花枝作酒筹
醉折花枝作酒筹Original
2021-05-18 14:53:2221153browse

In C language, the output format of long integer is "printf("%ld", element);". The function has a parameter that is a format string during input and output. When input and output variable values ​​need to be input and output, they need to be replaced by the corresponding format characters. Among them, "%ld" means that the data is input as a decimal signed long integer. or output.

What is the long integer output format?

The operating environment of this tutorial: Windows 7 system, C 17 version, Dell G3 computer.

How to output long integer in printf?

I have always heard that the inspection of gcc -Wall is much stricter, and today I found that it is indeed the case. I wrote a simple program with 15 lines in total. When I compiled it with gcc -Wall, it prompted a warning: int format, long int arg. After searching for a long time, I found that the problem was: using %d to output a long variable. After checking the book, I found that the book said to use %l when outputting long. I changed it and the error was even more serious. It directly said that it was an unrecognizable format character... After checking the information online, the correct form should be %ld. . After using C for so many years, I can’t even figure this out. Hey, I won’t say anything else...

1. General format

printf (format control, output table column)

For example: printf("i=%d,ch=%c\n",i,ch);

Description:

(1) "Format Control" It is a string enclosed in double apostrophes, also called "conversion control string". It includes two kinds of information:

①Format description: It consists of "%" and format characters. Its function is to convert The output data is converted to the specified format and output.

② Ordinary characters, that is, characters that need to be output as they are.

(2) "Output table column" is some data that needs to be output, which can be an expression

(3) The general form of the printf function can be expressed as

​​​​printf( Parameter 1, parameter 2,..., parameter n)

The function is to output parameter 2~parameter n according to the format given by parameter 1

2. Format characters (9 types)

(1)d (or i) format character. Used to output decimal integers, there are the following usages:

①%d, output according to the actual length of integer data.

②%md, m is the width of the specified output field. If the number of digits in the data is less than m, spaces will be added to the left end. If it is greater than m, the actual number of digits will be output.

③%ld (%mld is also available), output long integer data.

                                                                                                  long a=123456; Format: %o, %mo, %lo, %mlo are all acceptable.

(3)x (or X) format character, output integer in hexadecimal format. Format: %x, %mx, %lx, %mlx are all acceptable.

(4)u format character, used to output unsigned data, that is Unsigned number, output in decimal form. Format: %u, %mu, %lu are all acceptable.

(5)c format character, used to output a character. Format: %c, %mc are both acceptable.

(6)s format character, used to output a string. Format: %s, %ms, %-ms, %m.ns, %-m.ns are all acceptable.

(7)f format character, used to output real numbers (including single and double precision) in decimal form. Format: %f, %m.nf, %-m.nf are all acceptable.

Note: The effective digits of single-precision real numbers are generally 7 digits, and double-precision is 16 digits.

(8)e (or E) format character, output real numbers in exponential form. Format: %e, %m.ne, %-m.ne are all acceptable.

(9) The g (or G) format character is used to output real numbers. It automatically selects f format or e format (select the one with smaller width when outputting) according to the size of the value.

3. Description

(1) Except for The "Format Control" string can contain escape characters;

(3) If you want to output the character "%", you should use two consecutive % in the "Format Control" string, such as:

printf("%f%%",1.0/3);

(4) For format character table, please refer to the table below

Format character

says Ming##e,Eg,G

Recommended tutorial: "C#"

d,i

Output integers in signed decimal form (positive numbers do not output signs)

o

Output the integer in unsigned form in octal format (without outputting the leading character 0)

x,X

Output the integer in unsigned form in hexadecimal format (without outputting the leading character 0x). When x is used, the hexadecimal numbers a~f are output in lowercase form. When X is used, the hexadecimal numbers are output in uppercase letters

##u

Output an integer in unsigned decimal form

c

Output in character form, only one character is output

s

Output string

f

Output single and double precision numbers in decimal form, implicit Output 6 decimal places

##Output real numbers in exponential form

Use the %f or %e format, whichever has shorter output width, and do not output meaningless 0

The above is the detailed content of What is the long integer output format?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn