C源文件包含自己的头文件好处

C源文件包含自己的头文件是为了确保编译器能够检查声明和定义的一致性,防止因声明和定义不匹配导致的运行时错误。外部函数的声明不应放在.c文件中,而应放在对应的.h文件中,以便多个文件间共享并进行一致性检查。通过源文件包含头文件,可以实现定义和声明在同一文件中的检查,同时允许其他文件通过包含头文件进行一致性检查。
摘要由CSDN通过智能技术生成

一般一个我们工程中一个c源文件要有一个对应的头文件。构成一个功能模块。

包含一个头文件功能优点有如下
1、保持定义和声明的一致性
2、使得编译能进行

引言:
我们经常在c工程中发现,源文件中要包含自己的头文件。一直以来,都不知道为什么这样做。

以前的认知:
我认为,.c文件没有必要包含自己的.h文件。.h文件包含.c文件中对外提供定义的函数和全局变量的声明,.h文件就是.c文件提供的对外接口文件。既然.h文件就是.c文件提供的对外接口文件,那么.c文件就没必要包含自己的.h文件了(.h文件是对外提供用的,对内又何必再包含进来呢)。
鉴于这样的理解,我对于工程中.c源文件包含自己的.h头文件很是不理解,不知道为什么要这样做。

现在对此的认知:
但是现在,我知道为什么要源文件包含自己的头文件了。
如下,一段书中的原话:
“如果希望让编译器检查声明的一致性, 一定要把全局声明放到头文件中。特别是, 永远不要把外部模块外部函数的原型(也就是函数声明)放到.c 文件中。这样 通常声明与定义的一致性不能得到检查, 而矛盾*的原型(也就是函数声明)比不用还糟糕。”
注意:外部函数的原型,就是外部函数的声明。

对这段话的理解:
为什么:“永远不要把外部函数的原型放到.c 文件中”
这个外部函数A指的是B.c文件之外定义的函数,A函数定义在a.c文件中;B.c文件中需要使用外部函数A,就需要先对外部函数A声

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值