C语言模块化编程

说明

C程序可以只有一个main()函数。包含main()函数的模块叫做主模块(main module),其它模块叫做**次模块(secondary module)**。通常,每个次模块都通过一个头文件相关联。

环境

这里仅在Linux环境下调试,其他环境暂不说明

代码

内容说明

依次是主模块、次模块、头文件,读取用户输入数字并输出该数字的平方

###代码###

  • test.c 主模块
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include "calc.h" //注意,这里头文件为自己所写,必须用英文引号。

int main(void)
{
int x;
printf("Enter an integer value: ");
scanf("%d",&x); //如果您用的是Visual Studio的话,这里可能会需要用 scanf_s();
printf("\nThe square of %d is %ld.\n", x, sqr(x)); //这里的sqr();在后面文件中会定义
return(0);
}

  • calc.c 次模块
1
2
3
4
5
6
7
#include "calc.h" //注意,这里头文件为自己所写,必须用英文引号。

long sqr(int x)
{
return ((long)x * x);
}

  • calc.h 头文件
1
long sqr(int x);

连接

1
2
3
4
gcc -c test.c
gcc -c calc.c
gcc -o test test.o calc.o
./test

注: -c是只编译

输出

结果如下(以输入100为例子):

1
2
Enter an integer value: 100
The square of 100 is 10000.
作者

CairBin

发布于

2020-07-06

更新于

2020-10-01

许可协议

评论