三个源程序文件:main.cpp, max.cpp, add.cpp, main函数需要调用add函数和max函数。
/* max.cpp */
int max(int x, int y)
{
return x>y?x:y;
}
/* add.cpp */
int add(int x, int y)
{
return x+y;
}
情况一:如果三个文件main.cpp、 max.cpp和add.cpp在同一个文件夹里面,则main.cpp可以写成以下形式:
#include <stdio.h>
#include <stdlib.h>
#include "max.cpp"
#include "add.cpp"
int main(int argc, char *argv[])
{
extern int max(int x, int y); //声明max是外部函数
extern int add(int x, int y);
int a=3, b=6;
int c, d;
c=max(a, b);
d=add(a, b);
printf("c=%d d=%d\n", c, d);
return 0;
}
情况二:如果三个文件main.cpp、 max.cpp和add.cpp不在同一个文件夹里面,则需要在文件main.cpp的开头写清楚max函数和add函数的各自具体位置(也即各自的具体路径)。假设main.cpp放在桌面上一个名为C7的文件夹,而 max.cpp和add.cpp放在C7的一个名为的子文件夹functions中,则main函数可以写成以下形式:
#include <stdio.h>
#include <stdlib.h>
#include "C:\\Users\\Administrator\\Desktop\\C7\\functions\\max.cpp"
#include "C:\\Users\\Administrator\\Desktop\\C7\\functions\\add.cpp"
int main(int argc, char *argv[])
{
extern int max(int x, int y);
extern int add(int x, int y);
int a=3, b=6;
int c, d;
c=max(a, b);
d=add(a, b);
printf("c=%d d=%d\n", c, d);
return 0;
}