C语言中头文件的作用是用来包含函数声明、宏定义、结构体定义等内容,以便在多个源文件之间共享这些声明和定义。通过头文件,可以避免在每个源文件中重复声明和定义相同的内容,提高代码的可维护性和可读性。另外,头文件还可以用来实现模块化编程,将相关的函数和数据结构封装在一起,提高代码的组织性和可重用性。