What are Head Files used in #include

I have programming a little with C but have more knowlege with Pascal.

What it confused me is the head files usind in #include. When looking at them directly with the editor, seems like they are C language, not compiled libraries. That's why it confuses me...

For example the printf() is defined at the head file, but is that C language? Is it possible to change the definition to add more funtionality on it?

I think it is something like Uses clause at Pascal, but the Pascal libraries (obj) are compiled with assembly, C or even Pascal...

What about C? The libraries are not compiled at all and it is hard to understand them.

Who is Participating?
snifongConnect With a Mentor Commented:
header files (*.h) files contain the declarations of the functions and variables.  They are not object files or compiled libraries.  The .c or .cpp files contain the function definitions.  The c or cpp files compile into the .obj that you were talking about.
Yes. printf() is C language.  It is not possible to add more functionality to it in that file because you only have the header file ( the declaration ) and not the c or cpp file.  It would be better to write your own printf function instead of trying to modify that one.
All Courses

From novice to tech pro — start learning today.