El entorno en C
getenv lee una variable y devuelve NULL cuando no está definida.
#include <stdio.h>
#include <stdlib.h>
const char *setting(const char *name, const char *fallback) {
const char *value = getenv(name);
return (value != NULL && *value != '\0') ? value : fallback;
}
void show_config(void) {
printf("theme %s\n", setting("TYPESTAR_THEME", "default"));
printf("home %s\n", setting("HOME", "(unknown)"));
printf("shell %s\n", setting("SHELL", "/bin/sh"));
}
Cómo funciona
- Nunca escribas a través del puntero que entrega.
- Una variable ausente significa recurrir a un valor por defecto.
setenvyunsetenvson POSIX, no ISO C.
Palabras clave y builtins usados aquí
NULLcharconstreturnvoid
El intento, en números
- Líneas
- 13
- Caracteres a escribir
- 388
- Tokens
- 118
- Ritmo de tres estrellas
- 95 tpm
Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 75 segundos.
Paso 3 de 4 en Entorno del programa; paso 3 de 14 en Programación de sistemas.