Header file is nothing but the file which contains the declarations(or prototypes) of the functions which we use in our code..For example , for using input - output functions , we need "stdio.h" header file..
For string manipulation functions , like strlen() we need "string.h" header file..So including a header twice will have no problem ; just a redundancy as the function in main() will get its prototype from any one of the include statement..
Hence it should not give an error..