在C语言中各个函数之间进行调用的问题?

在C语言中各个函数之间进行调用的问题?比方说我有3个文件,分别为file1.c(文件1)file2.c(文件2)file3.c(文件3)//file1.c(文件1)#in... 在C语言中各个函数之间进行调用的问题?
比方说我有3个文件,分别为
file1.c (文件1)
file2.c (文件2)
file3.c (文件3)

//file1.c (文件1)
#include <stdio.h>
void main()
{
void a();
void b();
a();
while(1);
}
//file2.c (文件2)
#include <stdio.h>
void a()
{
b();
}
//file3.c (文件3)
#include <stdio.h>
void b()
{

}
用文件1去调用文件2中的函数,再在文件2中去调用文件3中的函数,这样可不可以啊?
如果文件2和文件3保存为.h的头文件
然后再在文件1里面包含文件2和文件3
这样的话可以可以也这样调用啊?
展开
 我来答
LinuxCrazyBoy
2009-11-15 · TA获得超过107个赞
知道答主
回答量:44
采纳率:0%
帮助的人:50.4万
展开全部
这样调用是可以的,只要调用之前声明函数的原型即可,就是让编译器知道这个函数是什么样的,而且定义已存在,只是在稍后的位置或者其他文件中,连接的时候会找掉这个函数。

函数原型的声明:
extern type funname(形参列表);

另外用头文件包含的方式也是可以的,因为头文件在编译之前有预处理器将头文件包含#include "headfile.h" or <headfile.h>替换成头文件的全部内容

这样相当于已经在调用函数之前已经让编译器看到了函数的定义

所以这样是可以的
百度网友686cd6fa2
2009-11-10 · 超过12用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:32.4万
展开全部
规范的使用方法:
2个.h文件 global.h, exglobal.h
global.h 中声明
void a();
void b();
void c();

exglobal.h 中声明
extern void a();
extern void b();
extern void c();

使用时只有一个.c 文件 #include "global.h"
其他.c 文件 头部添加 #include "exglobal.h"
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
seahorse47
2009-11-10 · TA获得超过182个赞
知道小有建树答主
回答量:62
采纳率:0%
帮助的人:112万
展开全部
file2.c里面在b();之前找个地方加一句void b();即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-11-10
展开全部
可以,放在同一个项目中编译即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式