Enums como estado en C
Un enum nombra los estados, y un switch sobre él hace visibles los huecos.
typedef enum {
STATE_IDLE,
STATE_RUNNING,
STATE_DONE,
STATE_COUNT
} State;
const char *state_name(State s) {
switch (s) {
case STATE_IDLE:
return "idle";
case STATE_RUNNING:
return "running";
case STATE_DONE:
return "done";
default:
return "unknown";
}
}
Cómo funciona
- Un
typedef enumle da al tipo un solo nombre corto. - Listar cada caso deja que el compilador avise si falta uno.
- Un miembro contador al final dimensiona arreglos según el enum.
Palabras clave y builtins usados aquí
casecharconstdefaultenumreturnswitchtypedef
El intento, en números
- Líneas
- 19
- Caracteres a escribir
- 255
- Tokens
- 60
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 42 segundos.
Paso 6 de 7 en Operadores y flujo; paso 13 de 35 en Fundamentos del lenguaje.