C语言 如何在一个文件中调用另一个文件的函数 用头文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言 如何在一个文件中调用另一个文件的函数 用头文件相关的知识,希望对你有一定的参考价值。
写一个简单的例子试一下
file1.c 头文件为file1.hfile2.c 头文件为file2.h
比如file2.c要调用file1.c里的一个函数
首先file2.c里要包含file1.h头文件(file1.h里有file1.c的函数申明)
然后file2.c文件里要有file1.c里的外部函数申明,用extern关键字申明
然后就可以直接file2.c里面调用file1.c里的函数了
我在单片机里是这样弄的完全没问题,51,avr,pic都可以追问
用简单的程序例子么
追答你自己不写么,我描述的够清楚了吧。
另外,电脑上的turboC我没用过,所以1楼的例子不知道对不对,按我的理解,test.h内的函数申明,怎么能保证指向func.c内的函数实体?func.c不包含test.h头文件吗?
就是不会才问的嘛。。。。写的都不能运行
追答我就用1楼的例子来说明吧
file1.h 内容如下
#ifndef _FILE1_INCLUDED_
#define _FILE1_INCLUDED_
extern int func(int x);
#endif
file1.c 内容如下
#include "file1.h"
int func(int x)
return x*x ; //返回x的平方
file2.c 内容如下
#include "file1.h"
void main()
int a=3;
printf("%d\n", func(a) ); //调用file1.c中的函数
以上,就实现了file2.c里调用file1.c里的函数
可以采纳了吧。。。
test.h
#include <stdio.h>int func(int x);
func.c
int func(int x)return x*x ; //返回x的平方
main.c
void main()
int a=3;
printf("%d\\n", func(a) ); //调用func.c中的函数
把以上三个文件放到一个工程中,编译,就可以看到结果了。
c语言在头文件中如何引用另一个头文件中的函数
c中如何在自己写的.h文件中调用自己写的.h文件中的函数;如
a.h 中有funca(); b.h中有funcb(); b.h中包含了a.h;在b.c中引用b.h;如何能调用到funca()函数;现在我用过extern在b.h中声明,但是不能访问到该函数;请大虾指点
1、首先建头文件是为了声明c文件中的函数,以及包括宏定义。建立头文件要有对应的c文件。
2、要写头文件首先要建一个.h文件。
3、打开h文件,进行编辑。建立头文件是有一定步骤的。要用到#ifndef。。。#define。。。。#endif。这是为了避免重复定义。
4、#ifndef后面要写的是头文件名称的大写。例如:test.h要写成__TEST_H__。前面与后面是两个下划线。字母用大写。
5、然后在define与endif中间声明函数名,记得写冒号。
6、然后在main文件中写上include这个头文件,就可以调用了。
7、最后编译,运行,就完成了。
参考技术A 既然函数在头文件中作了声明,一般是指全局函数,即其作用域是整个程序空间。若要在另一个头文件中引用该函数,可以通过以下两种方法实现:(1)使用#include "函数声明所在的头文件名.h"
(2)使用关键字extern 函数声明; 指明这是引用的外部函数。
例如 :函数void windows_display(windows_t window);声明在头文件wins.h中,若要在output.h中引用,则可以:(1)#include "wins.h" (2)在output.h中添加该语句extern void windows_display(windows_t window); 参考技术B 你在b.h里面申明函数funca()就行了本回答被提问者采纳
以上是关于C语言 如何在一个文件中调用另一个文件的函数 用头文件的主要内容,如果未能解决你的问题,请参考以下文章