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

来源:百度知道 编辑:UC知道 时间:2024/05/06 09:14:19
如题,比如我建了两个C源文件
A1.C 和 A2.c
我把一个自字义函数写在A2.c里面,然后在A1.c里面调用它

1,A1.c要怎样调用?
2,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中调用一样。

有两种方法:
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 , 就只能在本文件中使用了, 不能再被其他的文件调用。

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相同的路径下即可。