Introduction
代码要实现比较复杂的功能时,往往会包含非常多的函数。
当我们想再向其中添加其他功能或修改一些功能时,主程序所在的源代码会越来越冗长,查找并准确地修改某功能对应的函数也变得十分困难。
这时候我们不禁希望拥有一个干净简洁的主程序,就像大树的枝干,把每一个“分支”(即不同的功能模块)集成到一个专门的源代码文件中,方便查找和修改;需要添加全新功能时,写一个新的文件包含进主程序文件即可。
下面以经典Hello wolrd为例,简要阐明如何实现这一想法 —— 在主程序中引用外部源代码中的函数。
Method
- 先写一个常规的 hello world,并且编译运行它:
touch hello.c //linux下终端创建源代码文件
在 hello.c
中写入
#include <stdio.h>
int main(void)
{
printf("Hello World!\n");
return 0;
}
用 gcc
命令编译为hello文件,然后 ./
运行一下
Well done!
- 接下来,我们试图把输出“Hello world!”的这个功能封装到一个名为Hello的函数中,并且把这个函数给移到别的文件。
此时我们想要的主程序代码是这样的:
#include <stdio.h>
int main(void)
{
Hello();
return 0;
}
其中,这个Hello函数定义应该是这样:
void Hello(void)
{
printf("Hello world again!"); #为了区别于第一次的输出,这里加了again
}