Curso de Programación en C/Modificadores de especificadores de conversión de printf()

De WikiCabal
Ir a la navegación Ir a la búsqueda

Modificadores de especificadores de conversión de printf()

Flag o ModificadorSignifica
- El elemento está alineado a la izquierda;
es decir, se imprime a la izquierda del campo.
Ejemplo: "%-20s"
+Los valores con signo se visualizan con un signo más, si es positivo,
y con un signo menos, si es negativo.
Ejempĺo: "%+6.2f"
espacioLos valores con signo se visualizan con un espacio inicial (pero ninguna señal) si es positivo
y con un signo menos si es negativo. Un flag + tiene precedencia sobre un espacio
Ejemplo: "% 6.2f"
#Use un método alternativo para la especificación de conversión.
Produce un 0 inicial para el "%o" y un 0x o 0X inicial para el "%x" o "%X", respectivamente.
Para todas las formas de float, # garantías de que un carácter de punto decimal se imprime,
incluso si no hay digitos que siguen.
Para "%g" y "%G", se evita ceros a la derecha de ser eliminados.
Ejemplos: "%#o", "%#8.0f", y "%+#10.3E"
0Para las formas numéricas, rellenar el ancho del campo con ceros a la izquierda en vez de con espacios.
Este flag se ignora si un - flag está presente o si se especifica una precisión de un entero.
Ejemplos: %010d" y "%08.3f"
digitosAncho minimo del campo. Un campo más amplio se utiliza si el número impreso o cadena no entra en el campo.
Ejemplos: %10d"
.digitosPrecisión para "%e", "%E" y "%f" significa el número de dígitos a imprimir a la derecha del punto decimal.
Para "%g" y "%G" significa el maximo de dígitos.
Para "%s" significa el máximo número de caracteres a imprimir.
Para conversiones de enteros, significa el número mínimo de dígitos que aparece. Se usa cualquier número de '0' a la izquierda de el valor para llenar el campo
El uso de un punto sin número implica .0, "%.f" es el mismo que "%.0f"
Ejemplos: %5.2f"
hUsa con modificadores para indicar short int o short unsigned int
Ejemplos: "%hu", "%hx", y "%6.4hd"
hhUsa con modificadores para indicar signed char o unsigned char
Ejemplos: "%hhu", "%hhx", y "%6.4hhd"
jUsa con modificadores de enteros para indicar intmax_t or uintmax_t valores.
Ejemplos: "%jd" y "%8jX"
lUsa con modificadores de enteros para indicar long o unsigned long int.
Ejemplos: "%ld" y "%8lu"
llUsa con modificadores de enteros para indicar long long o unsigned long long int.
Ejemplos: "%lld" y "%8llu"
LUsa con modificadores de float para indicar long double o unsigned long long int.
Ejemplos: "%Lf" y "%10.4Le"
tUsa con modificadores de ints para indicar ptrdiff_t value que es la diferencia de dos pointers
Ejemplos: "%td" y "%12ti"
zUsa con modificadores de ints para indicar size_t value que se usa con sizeof
Ejemplos: "%zd" y "%12zx"

Explicación