El preprocesador en C es una fase previa a la compilación que manipula el código fuente mediante macros y directivas. Vamos a explorar cómo usar macros y directivas del preprocesador en C.
Macros del Preprocesador
Las macros son fragmentos de código que se reemplazan en el programa antes de la compilación.
Definición de Macros
#include <stdio.h>
#define PI 3.14159
#define CUADRADO(x) ((x) * (x))
int main() {
double radio = 5;
double area = PI * CUADRADO(radio);
printf("Área del círculo: %lf\n", area);
return 0;
}
Directivas del Preprocesador
Las directivas del preprocesador controlan la compilación y la inclusión de código.
Directiva `#include`
La directiva `#include` se utiliza para incluir contenido de otros archivos en el programa.
#include <stdio.h>
int main() {
printf("Hola, mundo!\n");
return 0;
}
Directiva `#define`
La directiva `#define` se utiliza para definir macros.
#include <stdio.h>
#define PI 3.14159
#define CUADRADO(x) ((x) * (x))
int main() {
double radio = 5;
double area = PI * CUADRADO(radio);
printf("Área del círculo: %lf\n", area);
return 0;
}
Directiva `#ifdef`, `#ifndef`, `#endif`
Estas directivas permiten la inclusión condicional de código.
#ifdef DEBUG
printf("Modo de depuración activado\n");
#endif
#ifndef PI
#define PI 3.14159
#endif
Directiva `#if`, `#elif`, `#else`
Estas directivas permiten la inclusión condicional de código basado en expresiones.
#if (defined(DEBUG) && (DEBUG == 1))
printf("Modo de depuración activado\n");
#elif (defined(DEBUG) && (DEBUG == 0))
printf("Modo de depuración desactivado\n");
#else
#error "DEBUG no está definido correctamente"
#endif
Estos son ejemplos básicos de cómo usar macros y directivas del preprocesador en C. Pueden ayudar a hacer tu código más flexible y mantenible.