没有必然联系。
函数名称作为一个名称,必须先声明后引用(函数调用表达式是引用函数名称的最常见情况)。函数定义中包含了函数声明。如果没有在调用前自行定义(例如定义在外部库文件中),那么需要在调用前加上声明,即函数头加分号的形式(形式参数名被编译器忽略,因此可省略)。当多个源文件可能要用到公共的声明时,可以和宏定义等代码一起写进头文件。头文件包含是简单的文本替换,即用头文件的内容代替#include所在行。这样在不同的源文件中只要用一条#include就可以声明多个函数了。但是反火来,只用最原始的声明而不用头文件也是可以的,只是比较麻烦而已。
对于C标准库的使用,一般推荐包含头文件而不是手动书写声明,因为这些看起来是名称的函数可能不一定是函数,有可能是宏,依赖性比较复杂。
====
[原创回答团]
参考资料:原创