I have the following two header files:
player.h
#ifndef _PLAYER_H_
#define _PLAYER_H_
#include "map.h"
typedef struct{
    char* name;
    int x;
    int y;
    int keyMapping;
    char symbol;
}player;
void move(map map, char* move, player player);
void setKeyMapping(int keyMap, player player);
void initPlr(char* name, int x, int y, player player);
#endif
and map.h
#ifndef _MAP_H_
#define _MAP_H_
#include "player.h"
typedef struct{
    char** levelData;
    int width;
    int height;
}map;
void init(map* map,int height, int width);
void print_map(map map, player player);
void resume(const char *resFrom, map map);
void save(const char *saveTo, map map);
#endif
When I run the make file, I get the following error:
player.h:10:11: error: unknown type name ‘map’
 void move(map map, int move, player player);
I am relatively new programmer (in C that is) and I came here is hopes that you guys could help me figure out why the header files aren't seeing each other even though I included them. The compiler I am using is gcc, and I checked to make sure that both of the header files are included in their partner C files.
I also checked out these three posts:
Include a header in another header file
Include headers in header file?
Should I use #include in headers?
EDIT:
If I edit the map.h file as I have above (I added a player parameter to print_map and an include statement) the compiler throws this error:
player.h:12:11: error: unknown type name ‘map’
 void move(map map, char* move, player player);
 
     
    