文件包含---多个源程序的编译和链接

三个源程序文件: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;     
}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值