typestar

const a ambos lados en C

Dónde se sienta el const decide si se congela el puntero o lo apuntado.

size_t measure(const char *text) {
    size_t n = 0;
    while (text[n] != '\0') {
        n++;
    }
    return n;
}

void variants(void) {
    char buffer[] = "typestar";
    const char *reader = buffer;
    char *const anchored = buffer;
    const char *const frozen = buffer;

    reader = "elsewhere";
    anchored[0] = 'T';
    (void) measure(reader);
    (void) measure(frozen);
}

Cómo funciona

  1. const char *p: los caracteres son de solo lectura.
  2. char *const p: el puntero no puede reapuntarse.
  3. const char *const p: ninguno puede cambiar.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
19
Caracteres a escribir
331
Tokens
105
Ritmo de tres estrellas
90 tpm

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

Escribe este fragmento

Paso 5 de 5 en Punteros; paso 5 de 25 en Punteros y memoria.

← Anterior Siguiente →