thanks for the replies, i understand every thing except how to declare the global variable. What i really have is an array of structs.

Code:
typedef struct tile {
  bool furniture;
  bool cat;
  bool vacuum;
  int dirt;
} Tile;

Tile p**;
So as I understand, I have two choices:

choice 1: declare the struct and the pointer in all of the cpp files and not in any header files. Also making one of the declarations an extern.

choice 2: declare the struct and the pointer in a header as an extern and declare the struct and pointer in only one of the cpp files.

are both ways correct, or have i misunderstood?