These files contain all scaffolding code that your main() will use as we do not want to overpopulate with excessive lines of code for readability.
Computers used to be too slow to compile a whole program in one single mega-blob where all the functions and types were visible.
To solve this, programs are split into c/h files which are each individually compiled into a machine code file (the ‘object’ file), and then linked together into an exe or dll.