typestar

Conversiones de printf en C

La cadena de formato es un lenguajito: ancho, precisión y el especificador correcto por tipo.

#include <stdio.h>

void formats(void) {
    int count = 42;
    double rate = 91.5;
    const char *name = "typestar";
    size_t size = sizeof(count);

    printf("%d %5d %-5d|\n", count, count, count);
    printf("%.2f %8.3f %e\n", rate, rate, rate);
    printf("%s %10s %-10s|\n", name, name, name);
    printf("%zu bytes, %c, %x, %o\n", size, 'A', 255, 8);
    printf("%p\n", (void *) name);
    printf("%%d prints a literal percent\n");
}

Cómo funciona

  1. %d es int, %u unsigned, %zu size_t, %p un puntero.
  2. %-8s alinea a la izquierda en ocho columnas; %.2f fija los decimales.
  3. Un especificador equivocado es comportamiento indefinido, no un aviso que puedas ignorar.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
15
Caracteres a escribir
404
Tokens
119
Ritmo de tres estrellas
90 tpm

Al ritmo de tres estrellas de 90 tokens por minuto, este intento toma unos 79 segundos.

Escribe este fragmento

Paso 1 de 2 en Entrada y salida; paso 31 de 35 en Fundamentos del lenguaje.

← Anterior Siguiente →