c语言调用多个文件的函数 C语言多文件操作

C语言中 多个源文件之间函数如何调用问题

题目明显提示你没有定义“add”呀,要求你查看“add”哦!再个你程序还是有问题的吧,如果你把它放到不同的源文件中一起编译连接的话,还会出现重复定义的错误吧。改正如下:

创新互联公司专业为企业提供藤县网站建设、藤县做网站、藤县网站设计、藤县网站制作等企业网站建设、网页设计与制作、藤县企业网站模板建站服务,十载藤县做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

#includestdio.h

#includemalloc.h

struct add *wwe();

struct add

{

int xuehao;

};

main()

{

struct add *p1;

p1=wwe();

}

//被调函数332.c

#include stdio.h

#includemalloc.h

struct add *wwe() //此处你是定义一个名为wwe的函数,没有参数,返回值类型是:struct add*

{

struct add *p1;

p1=(struct add *)malloc(sizeof(struct add)); /*此处“extern”可以不要吧,一般他是用来声明用的,*/

return p1; //此处要返回一个值,没有值是不可以的

}

C语言中,是否可以调用其它文件的函数?

C语言可以在程序中调用其他文件中的函数。

在大型的程序软件开发中,为了代码的可读性,或多人同时进行代码开发,可以各写自己的源文件,然后,在编译时,将多个源文件链接到一起,就可以形成最终的目标程序。

各程序中的函数可以是共用的,参考代码如下:

//a.c

#include stdio.h

int funa( int n )

{

printf("n=%d\n", n );

return n*2 ;

}

//main.c

#include stdio.h

extern int funa(int); //声明funa为外部函数

void main()

{

int x=5,y;

y=funa(x);

printf("y=%d\n", y );

}

在linux下,编译方法为:gcc main.c a.c -o test

在windows下,可建立一个工程,将两个文件添加到该工程中,编译,运行即可

C语言中 多个源文件之间函数如何调用

首先要建立一个头文件,以.h保存

这样

#include stdio.h

typedef struct {

char name[100][60];

char number[100][8];

int mon[100],day[100];

char sex[100];

double height[100];

}inf;

int input(inf *x ,int i);

int output(inf *y ,int h);

当然要有个主函数.

#include "inout.h"

int main(void)

{

int n;

inf id;

do{

printf("*********n");

scanf("%d",n);

}while(n100);

input(id,n);

output(id,n);

return(0);

}

然后 这个头文件有两个函数.这两个函数,以.c的格式保存.

#include stdio.h

#include "inout.h"

int input(inf *x,int i)

{

........

}

#include stdio.h

#include "inout.h"

int output(inf *y ,int h)

{

....

}

主函数来负责调用,别的源文件.但是,要有一定要有个头文件.

就相当说, 站长(主函数)要控制各个列车(多个源文件).需要通过调度台(头文件)

这是我的理解,我也是刚学.希望大家指正

编译的时候,要分别编译,先要把非主函数的源文件便宜成obj格式.

我的编译器是:cl /c 源文件名.c (cygwin中是 gcc -c 源文件名.c)

最后和主函数结合.

cl main.c 源文件.obj

cygwin中是 gcc -o main main.c 源文件.o

不知道 我说的够不够明白


网站标题:c语言调用多个文件的函数 C语言多文件操作
当前URL:http://scyanting.com/article/hpepio.html