c explicación detallada de la entrada y salida formateadas

El contenido después del signo% en la función de entrada-salida estandarizada siempre ha sido un misterio. Intenta sumar aquí. Las partes que se pueden colocar en las dos funciones son las siguientes:

printf ()% [banderas] [ancho] [. prec] [hlL] tipo
scanf ()% [flags] tipo

scanf () es más simple.

printf ()

1 bandera

bandera sentido
- Alinear a la izquierda
+ Ponga un cartel al frente (+ o -)
(espacio) Número positivo dejado en blanco
0 0 relleno
# Agregue identificadores 0x, 0 antes de hexadecimal y octal respectivamente

2 ancho

ancho sentido
número Número mínimo de caracteres (longitud de toda la salida)
* El siguiente parámetro es el número de caracteres.
.número El número de dígitos después del punto decimal.
. * El siguiente parámetro es el número de dígitos después del punto decimal.

3 .pre

.pre sentido
.número El número de dígitos después del punto decimal.
. * El siguiente parámetro es el número de dígitos después del punto decimal.
printf("%- 6d\n",123);// - 左对齐, 整数前填充空格,, 输出6位 ,  
 123
printf("%+06d\n",-123); // 加符号, 0填充,。
-00123
printf("%+08.2f\n",123.1); // 加符号, 0填充, 共八个字符, 小数点后2位, 输出浮点型。
+0123.10
printf("%#+08.2x\n",12); // 添加进制标识符
    0x0c

No agregue, el valor predeterminado es la alineación a la derecha. Obviamente, el relleno 0 no se puede usar después de la alineación a la izquierda. El orden de las gramáticas en el mismo nivel es irrelevante.

4 modificador

Modificación de tipo sentido
S.S Byte único
h corto
l largo
ll largo
L largo doubel

5 Tipo

Tipos de sentido
yo o d En t
tu int sin firmar
O Octal
X Hexadecimal
X Hexadecimal para letras mayúsculas
fo F flotador, 6
e o E índice
gramo flotador
GRAMO flotador
a o A Punto flotante hexadecimal
C carbonizarse
s Cuerda
pag puntero
norte Número de salidas o salidas
int num = 0; 
printf("hello world%n\n",&num); //%n的使用, 本地编译器不能使用%n, 在线编译器可以
printf("%d\n",num);
// 输出 
hello world
11

scanf ()

1 escaneo

bandera sentido
* salte por encima
número Número máximo de caracteres
S.S carbonizarse
h corto
l largo, doble
ll largo largo
L doble largo

2 scanf

tipo sentido
D En t
I Entero, puede ser hexadecimal u octal
tu int sin firmar
O Octal
X Hexadecimal
a, e, f, g flotador
C carbonizarse
s Cuerda
[…] Caracteres permitidos
pag puntero

El valor de retorno de printf () y scanf ()

prinff () devuelve el número de caracteres de salida
scanf () devuelve el número de elementos de entrada

Supongo que te gusta

Origin blog.csdn.net/weixin_43705953/article/details/115304823
Recomendado
Clasificación