c语言在头文件中如何引用另一个头文件中的函数

c语言在头文件中如何引用另一个头文件中的函数,第1张

file1.c

头文芦并件为file1.h

file2.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都可以

比如说,在头文件header.h中定义如下:

void Print(const char * str)

在header.cpp中实现如下:

void Print(const char * str)

{

printf(str)

}

扩展资料:

头文件的内容除了函数原型和宏定义外,还可以有结构体定义,全局变量定义:

一个#include命令指定一个头文件;

文件1包含文件2,文件2用到文件3,则文件3的包含命令#include应放在文件1的头部第一行;

包含可以嵌套;

<文件名则绝察>称为标准方孙茄式,系统到头文件目录查找文件,"文件名"则先在当前目录查找,而后到头文件目录查找;

被包含文件中的静态宏饥全局变量不用在包含文件中声明。

参考资料来源:百度百科-头文件

两个头文件是不可以相互调用的。

举个例型裂子,我有4个文件,a.h,a.cpp,b.h,b.cpp

你如果在a.h里面include"b.h",那么在b.h里面就不能include"a.h",会出错.不过你可以在b.cpp里面"a.h",

反岩芦过来也是一样的

关键粗租带是你说的互相调用这个词。

我们的理解是:

你在a.h里面写:

include "b.h"

然后又在b.h里面写:

include "a.h"

这种写法是错误的!

如果只是为了保证头文件只可能被include一次的话,你要这样:

#ifndef A_H

#define A_H

...//头文件内容

#endif

或者如果是在vs里面的话就直接在开头写:

#pragma once就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12126007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存