C语言中如何引用其它C源文件中的函数?

如题,比如我建了两个C源文件A1.C和A2.c我把一个自字义函数写在A2.c里面,然后在A1.c里面调用它1,A1.c要怎样调用?2,A2.c里面要怎样写?只写一个自定义... 如题,比如我建了两个C源文件
A1.C 和 A2.c
我把一个自字义函数写在A2.c里面,然后在A1.c里面调用它

1,A1.c要怎样调用?
2,A2.c里面要怎样写?只写一个自定义函数就可以了吗?
展开
 我来答
果果就是爱生活
高能答主

2019-09-21 · 专注生活教育知识分享
果果就是爱生活
采纳数:2071 获赞数:272233

向TA提问 私信TA
展开全部

在源文件A1.c中调用A2.c 中的函数有两种方法:

1、在A2.c中有完整的函数定义,在A1.c中添加一下要用到的函数原型(声明)就可以了,例如:

在A2.c中:有函数void A2(){...};。

在A1.c中:在文件前头增加一行:void A2();就可以了。

2、把A2.c中完整定义的函数的原型,写到一个A2.h文件中,然后在A1.c的文件头增加#include "A2.h"就可以了。

以上两种方法,在A1.c中都可以正常的调用,就跟在A2.c中调用一样。

其实函数默认是外部的,只要在其他文件中声明就能使用;但是注意如果在前面加上static,就只能在本文件中使用了,不能再被其他的文件调用。

扩展资料: 

1、一个.h文件要 对应有一个.c文件,这样链接器就可以调用这个文件里的函数。比如a.h 和 a.c。

2、把相应的函数定义写在.c文件中。这里要强调一点:要加上#include ".h",这个一般作为一种工程规范。因为如果.c文件中的函数也需要调用同个.c中的其它函数,那么这个.c往往会include对应的.h。比如头文件里进行了变量的声明,这个时候对应的.c文件是一定要加上这个头文件的。

3、再在其他的main.c文件开头添加#include "a.h"。

韧劲9
推荐于2017-09-29 · TA获得超过9224个赞
知道小有建树答主
回答量:1638
采纳率:92%
帮助的人:348万
展开全部
有两种方法:
1。在A2.c中有完整的函数定义,在A1.c中添加一下要用到的函数原型(声明)就可以了,例如:
在A2.c中:有函数void A2(){...};
在A1.c中:在文件前头增加一行:void A2();就可以了
2。把A2.c中完整定义的函数的原型,写到一个A2.h文件中,然后在A1.c的文件头增加#include "A2.h"就可以了
以上两种方法,在A1.c中都可以正常的调用,就跟在A2.c中调用一样。
其实函数默认是外部的,只要在其他文件中声明就能使用; 但是注意如果在前面加上static , 就只能在本文件中使用了, 不能再被其他的文件调用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jeff8888
推荐于2017-09-08 · TA获得超过2.2万个赞
知道大有可为答主
回答量:1158
采纳率:100%
帮助的人:2124万
展开全部
有两种方法:

1。在A2.c中有完整的函数定义,在A1.c中添加一下要用到的函数原型就可以了,例如:
在A2.c中:有函数void A2(){...};
在A1.c中:在文件前头增加一行:void A2();就可以了

2。把A2.c中完整定义的函数的原型,写到一个A2.h文件中,然后在A1.c的文件头增加#include "A2.h"就可以了

以上两种方法,在A1.c中都可以正常的调用,就跟在A2.c中调用一样。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hwd0312
2015-05-31 · TA获得超过4336个赞
知道小有建树答主
回答量:1043
采纳率:100%
帮助的人:166万
展开全部
C语言中引用其它C源文件中的函数有几种方式:
1.需要在 使用此函数的源文件 中 包含被使用函数所在的源文件,并且保证被使用函数所在的源文件在工程的源文件目录中。
比如说要在a.c中使用func()函数,func()函数在func.c中定义,源文件路径为“d:/project/path/”,那么就需要在a.c中加上#include"func.c",并且将func.c拷贝到“d:/project/path/"下。
2.使用extern进行声明,表示函数在其他文件中定义了。
比如说要在a.c中使用func()函数,func()函数在func.c中定义,原型是原型是int func(int mu),在a.c的前面加上extern int func(int mu) ,并且将func.c放在a.c相同的路径下即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linsendear
2006-11-14 · 超过25用户采纳过TA的回答
知道答主
回答量:176
采纳率:0%
帮助的人:0
展开全部
用#include "A2.c"
应该可以吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式