(1.21)为什么C语言要分. h和. c文件,这样有什么好处?

第一个小问题:为什么要分.h和.c文件?

首先要先弄清.c和.h代表什么,.c是源文件,.h是头文件,在我看来源文件就是写的整个代码,而头文件是我们在有很多源文件时会有很多相同定义和很多重复使用的函数,这时候用一个头文件来放在一起。简而言之,我想之所以要分这两种文件的意思就在好管理和使用定义和函数。

第二个小问题:这样有什么好处?

我也没使用过,没办法亲自体会它有什么好处,查阅资料得知,这样的好处是“解决文件编译时重复声明即声明变更繁杂的问题。”
我设想了一下整个编译过程,首先就是写好几个源文件,这时如果每个文件都有相同的定义或者函数,就要每个文件一次写上去,这就很麻烦了,之后如果出现定义乱了,还要一次改来改去,实在是太麻烦,这还不是最恐怖的,如果在所有写好编译后,还发现有定义不合适还要依次每个源文件去找去改,这太麻烦了。

第一个大问题的第一个小问题:能不能把函数及变量的声明放在源文件里?

根据我打代码的经历来说,最开始都要声明函数和变量,从来没有过.h文件,所以我觉得是可以的。

第一个大问题的第二个小问题:能不能把函数和变量的定义放在头文件里?

在最开始问题里,就知道头文件是用来声明好多个源文件相同的函数和变量的声明,而不是定义,定义应该是在源文件中单独定义的,就像是定义函数一样,单独定义,然后在最开头来声明一下,就可以用了。所以,答案是不能。

第一个大问题的第三个小问题:能不能在两个头文件里都声明同一个函数或者变量?

有点不懂,想了一下,如果要声明这个函数或者变量,那要在哪里定义它们,才能在编译的时候找到它的源代码?所以,应该不可以吧。

第一个大问题的第四个小问题:能不能在两个源文件里都定义同一个函数或者变量?

首先我觉得函数可以的。其次关于变量我觉得定义全局变量就好了吧。

posted @ 2020-01-22 20:39  zouzouy  阅读(1556)  评论(1编辑  收藏  举报