English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básica de lenguaje C

Control de flujo de lenguaje C

Funciones del lenguaje C

Arreglos del lenguaje C

Punteros del lenguaje C

Cadenas del lenguaje C

Estructura de lenguaje C

Archivo de lenguaje C

C Otros

Manual de referencia de C

Explicación del identificador de formato C

Los identificadores de formato son cadenas de caracteres utilizadas en las funciones de entrada y salida de formato. La cadena de formato determina el formato de la entrada y salida. La cadena de formato siempre comienza con el carácter ‘%’.

1. Explicación de los identificadores de formato y la salida como resultado

Explicación de la conversión

Salida

%a

Número de coma flotante, dígitos hexadecimales y p-Notación (C99)

%A

Número de coma flotante, dígitos hexadecimales y P-Notación (C99)

%c

Un carácter

%d

Entero de decimales con signo

%e

Número de coma flotante, e-Notación

%E

Número de coma flotante, E-Notación

%f

Número de coma flotante, notación decimal

%g

se selecciona automáticamente %f o %e. El formato %e se utiliza cuando el exponente es menor-4o mayor o igual a la precisión

%G

se selecciona automáticamente %f o %E. El formato %E se utiliza cuando el exponente es menor-4o mayor o igual a la precisión

%i

Entero de decimales con signo (igual que %d)

%o

entero octal sin signo

%p

puntero (es decir, la dirección)

%s

cadena

㩵n

entero decimal sin signo

%%x

entero hexadecimal sin signo usando el número hexadecimal 0f

%%X

entero hexadecimal sin signo usando el número hexadecimal 0F

%%

imprimir un porcentaje

dos, printf() modificador

Modificador

Significado

símbolo

cinco símbolos (-y+y 0) se describirán en la tabla tres, se pueden usar cero o más símbolos

digit(s)

valor mínimo del ancho de campo. Si el campo no puede contener el número o la cadena a imprimir, el sistema usará un campo más amplio. Ejemplo: "4d”

.digit(s)

precisión. Para las conversiones %%e, %%E y %%f, es el número de dígitos que se imprimirán a la derecha del punto decimal. Para las conversiones %%g y %%G, es el número máximo de dígitos significativos. Para la conversión %%s, es el número máximo de caracteres que se imprimirán. Para las conversiones de enteros, es el número mínimo de dígitos que se imprimirán; si es necesario, se usarán ceros precedentes para alcanzar este número. Solo se usa "."indica que sigue un cero, por lo que %%f es igual a %%0f. Ejemplo: "5.2f" imprime un número de coma flotante, su ancho de campo es5caracteres, con dos dígitos después del punto decimal.

h

usado junto con el símbolo de conversión de entero para representar unshort int o unsigned short int valor numérico de tipo.

Ejemplo: "%%hu", "%%hx" y "6.4hd

hh

usado junto con el símbolo de conversión de entero para representar unsigned char ounsigned charvalor numérico de tipo.

Ejemplo: "%%hhu", "%%hhx" y "6.4hhd

j

usado junto con el símbolo de conversión de entero para representar un valor intmax_t o uintmax_t.

Ejemplo: "%%jd" y "8jX

l

usado junto con el símbolo de notación de entero para representar unlong int ounsigned long int valor de tipo.

Ejemplo: "%%ld" y "8lu

ll

usado junto con el símbolo de notación de entero para representar unlong long into unsigned long long int valor de tipo (C99)。

Ejemplo: "%%lld" y "8%%llu" y "

L

usado junto con el símbolo de conversión de flotante para representar unlong doublevalor.

Ejemplo: "%%Lf" y "%%"10.4Le

t

usado junto con el símbolo de conversión de entero para representar un valor ptrdiff_t (el tipo correspondiente a la diferencia entre dos punteros) (C99)

Ejemplo: "%%td" y "%%12"ti"

z

usado junto con el símbolo de conversión de entero para representar unsize_tvalor(sizeof devuelve el tipo) (C99)。

Ejemplo: "%%zd" y "%%12"zx"

tres del símbolo de printf()

Modificador

Significado

-

El proyecto se alinea a la izquierda, lo que significa que se imprimirá el proyecto en el inicio del campo. Ejemplo: "%%"-20s

+

Si el valor con signo es positivo, se muestra con el símbolo de suma; si es negativo, se muestra con el símbolo de subrayado. Ejemplo: “%+6.2f”

(espacio)

Si el valor con signo es positivo, se muestra con un espacio de guía (pero sin mostrar el símbolo); si es negativo, se muestra con el símbolo de subrayado.+El símbolo cubre el símbolo de espacio. 6.2f”

#

Usar la forma opcional de la conversión de símbolo. Si es el formato %o, se comienza con 0; si es el formato %x y %X, se comienza con 0x o 0X, para todos los formatos de coma flotante, # asegura que se imprima un carácter de punto decimal, incluso si no se limitan los dígitos. Para los formatos %g y %G, impide que se eliminen los ceros de seguimiento. Ejemplo: “%#o”、“%#8.0f” y “%+#10.3E”

0

Para todos los formatos numéricos, rellenar el ancho de campo con ceros en lugar de con espacios. Si ocurre-El símbolo o se especificó la precisión (para enteros) se ignora. Ejemplo: “%010d” y “%08.3f”

Cuatro, los símbolos de conversión de scanf() en ANSI C

Símbolo de conversión

Significado

%c

Interpretar la entrada como un carácter

%d

Interpretar la entrada como un entero decimal con signo

%e, %f, %g, %a

Interpretar la entrada como un número de coma flotante (%a es C99Estándar)

%E, %F, %G, %A

Interpretar la entrada como un número de coma flotante (%A es C99Estándar)

%i

Interpretar la entrada como un entero decimal con signo

%o

Interpretar la entrada comoSímboloNúmero octal

%p

Interpretar la entrada como un puntero (dirección)

%s

㩵n

Interpretar la entrada como un entero decimal sin signo

%x, %X

Interpretar la entrada comoSímboloEntero hexadecimal

Cinco, los modificadores de conversión de scanf()

Modificador

Significado

*

Asignación retrasada. Ejemplo: “%*d”

digit(s)

Ancho de campo máximo; detener la lectura del elemento de entrada cuando se alcanza el ancho de campo máximo o se encuentra el primer carácter de espacio en blanco (lo que ocurra primero). Ejemplo: “%10s”

hh

Leer el entero como signed char o unsigned char. Ejemplo: “%hhd”“%hhu”

ll

Leer el entero como long long o unsigned long long (C99)。Ejemplo: “%lld”“%llu”

h, l o L

“%hd” y “%hi” indican que el valor se almacenará en un short int.

“%ho”“%hx” y “%hu” indican que el valor se almacenará en un unsigned short int.

“%ld” y “%li” indican que el valor se almacenará en un long.

“%lo”“%lx” y “%lu” indican que el valor se almacenará en un unsigned long.

“%le”“%lf” y “%lg” indican que el valor se almacena en tipo double. Utilizar L (en lugar de l) con e, f y g indica que el valor se almacena en tipo long double.

Si no hay estos modificadores, d, i, o y x indican el tipo int, mientras que e, f y g indican el tipo float.