Hola,
// fichero aa.h
#define HOLA "hola"
// fichero bb.h
#include "aa.h"
#define ADIOS "adios"
// FICHERO main.c
#include "aa.h"
#include "bb.h"
#include <stdio.h>
int main() {
printf("probando errores de redefinicion\n");
return 0;
}
Lo compila y lo ejecuta sin problemas. ¿No debería de dar error de redefinición al incluir dos veces aa.h?
¡Gracias!
No, lo único que pusiste en esos ficheros son defines. Que sería lo mismo que hacer lo siguiente:
#include <stdio.h>
#define ADIOS "adios"
#define ADIOS "adios"
int main() {
printf("probando errores de redefinicion\n");
return 0;
}
Si en cambio, en esos archivos ponés funciones/clases/etc, sí da error de redefinición.