c语言编程为什么要多文件呢
源代码确实是多文件的。不过编译好的目标代码在运行期调入内存后就无所谓文件的概念了,然而不同代码段之间的界限仍然存在。模块化主要有以下几个优点:
1.便于复用代码。通用性强的重复的功能只要写一遍就可以了,下次要用在其它程序上时只要更改很小的部分或者可以不用更改。
2.便于多人协作。在设计软件之初就可以很清楚地分配各个开发部门的任务。模块的编写者本身只要关注他所写的东西,清楚这一部分的功能,留出接口就可以了。另外,对于整个工程的负责人而言,这样会方便浏览全局的工作进度,统筹人员安排。
3.便于修改和维护。如果能确定只是某个模块有问题,在模块内解决即可,不需要牵一发而动全身。要升级某一部分的功能,可以只针对具体的模块重新开发,节约成本。其实不只是C语言,许多其它语言也经常使用这种方法。开发大型软件时这种方法非常有效(否则不明显,或者反而有副作用)。对于软件设计来说这不仅仅是一种风格,而是一种方法学了。声明include包含的函数是声明外部函数,只是extern关键字可以省略。声明后直接调用就可以了。----[原创回答团]
keil中一个工程如何包含多个C文件
现在网上介绍的也是流行的方法是在工程中把全部的C文件都加进来,然后在需要调用其它子函数时再定义一个外部命令,用extern来定义。但是这种方法很麻烦的,关系也不容易搞清楚。其实有一个简便的方法,确实就是用include把其它的子函数都加进来就行了,在主程序的前面用多条include把其它的子函数都加进来,而在工程中只加载主程序main()。在主程序中调用子函数时就可以了。
各子函数还可以互相调用,但要注意用include加载的顺序。被调用的要在前面。但要注意,在其它的子函数中就不能再重复用include加同一个头文件,只要在主程序中加一次就行,否则编译时会出错的。用include是包含文件的,并非只能包含头文件。