AD

¿Ya dominas lo básico? Un curso estructurado de C es la vía rápida para dar el salto.

Ver cursos de C en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔧Lecciones de C
Lección 19 / 68

Constantes (#define y const)

En esta lección darás nombre a los valores fijos en lugar de repetirlos por el código.

Hay dos formas. #define MAX 100 es una orden al preprocesador: sustituye el texto antes de compilar. const int max = 100; declara una variable de verdad que no se puede modificar.

El código de ejemplo define una nota máxima y la usa al mostrar el resultado.

La diferencia importa. #define no tiene tipo ni respeta ámbitos, y como es sustitución textual produce sorpresas: #define DOBLE(x) x*2 hace que DOBLE(1+1) valga 3, no 4, porque se expande a 1+1*2. Por eso las macros con parámetros se escriben siempre con paréntesis alrededor de todo.

La recomendación actual es preferir const (o enum para grupos de constantes enteras), porque el compilador comprueba el tipo y el depurador conoce el nombre. #define se reserva para lo que const no puede hacer, como la compilación condicional.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar C directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)