Is there any reason not to write one header file that #includes all other header files and just #include that one header in each c file?
Each header file is setup #ifndef ... #define ... #endif
To clarify the duplicates; I was asking about user written code not system headers and the other possible duplicate didn't have answers that specified why it wasn't a good idea.
Thanks for the answers, I hadn't thought through some of them. I will look a taking the hybrid approach of some smaller headers for modules that fit together. This is for a codebase that I have taken over, it's very much a web I'm slowly trying to untangle.