actually the more traditional way to do that is
Code:
#ifndef _MY_HEADER_FILE_H_
#define _MY_HEADER_FILE_H_
//other stuff in the header goes here
#endif
and make sure that all variables are declared extern (and initialized in the .c file that owns them), otherwise each file will get its own copy of the variable.
EDIT:
forgot to mention that _MY_HEADER_FILE_H_ should be the name of the file it is in (in this case it would be myheaderfile.h), if two files have the same #define at the top, one will get ignored