Tengo un directorio principal A
con dos subdirectorios B
y C
.Incluyendo un archivo de encabezado de otro directorio
Directorio B
contiene un archivo de cabecera structures.c
:
#ifndef __STRUCTURES_H
#define __STRUCTURES_H
typedef struct __stud_ent__
{
char name[20];
int roll_num;
}stud;
#endif
Directorio C
contiene main.c
código:
#include<stdio.h>
#include<stdlib.h>
#include <structures.h>
int main()
{
stud *value;
value = malloc(sizeof(stud));
free (value);
printf("working \n");
return 0;
}
pero me da un error:
main.c:3:24: error: structures.h: No such file or directory
main.c: In function ‘main’:
main.c:6: error: ‘stud’ undeclared (first use in this function)
main.c:6: error: (Each undeclared identifier is reported only once
main.c:6: error: for each function it appears in.)
main.c:6: error: ‘value’ undeclared (first use in this function)
Cuál es la forma correcta inc lude el archivo structures.h
en main.c
?
¿Cuál es el compilador que está utilizando? Para gcc, debería ver el indicador -I (vea la página del manual). Para otros compiladores revisa la documentación. –