`
justshare
  • 浏览: 106002 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

C系列: 关于头文件 .h 的应用

阅读更多
对于一个文件fileA.c调用另外一个文件fileB.c的printmessage函数,上一遍文章 C系列: 关于multiple markers at this line的error里面讲道:除了在fileB.c中要声明外,还需要在fileA.c中再次声明。这样声明来声明去的,是个累赘。这时我就想,能不能把它做成类似于JAVA的接口,需要时加进来?正好,在C里面有这种类似的机制,它就叫头文件。把公用的函数声明到头文件,具体调用时再用include把头文件包含进来。

头文件:template.h
/*
 * template.h
 */

#ifndef TEMPLATE_H_
#define TEMPLATE_H_

void printmessage(); /*在头文件中声明*/

#endif /* TEMPLATE_H_ */

调用文件:fileA.c
/*
 * fileA.c
 */
#include <stdio.h>

#include "template.h" /*将声明好的头文件包含进来*/

void ghellops() {
	printmessage(); /*调用fileB.c中的printmessage函数*/
	printf("fold aaa.c\n");
}

被调用文件:fileB.c
/*
 * fileB.c
 */
#include <stdio.h>

#include "template.h" /*将声明好的头文件包含进来*/

/*实现方法*/
void printmessage() {
	printf("printmessage\n");
}


记:大一的时候学过一学期的C语言,后来就再也没碰过C。自从接触JAVA的面向对象后,现在再回头学C,走了不少弯路,别看上面写得这么简单,那是建立在问了同学+自己摸索了半天之后才明白的。可能是自己太笨了点,其实还有一个主要的原因是脑子一下子转换不过来,习惯真是可怕啊。
分享到:
评论

相关推荐

    fatal error C1083: 无法打开包括文件:“afxcontrolbars.h”

    ### 解决方案:“fatal error C1083: 无法打开包括文件:“afxcontrolbars.h”” 在使用Visual Studio 2008 (VS2008) 进行开发时,可能会遇到一个常见的错误:“fatal error C1083: 无法打开包括文件:...

    linux下的C语言POSIX正则表达式头文件和源文件: regex.h regex.cpp

    总之,POSIX正则表达式是C语言编程中的一个重要工具,无论在Linux还是Windows环境下,都可以通过`regex.h`头文件提供的API实现强大的文本匹配功能。了解和掌握这些函数的使用方法,对于提升C/C++程序的文本处理能力...

    MFC类和头文件.pdf

    头文件:`afxcmn.h` 描述:这是一个动画控件类,用于在窗口中显示动画。该控件可以播放一系列位图文件或资源中的帧作为动画效果。 - **`CArchive`** 头文件:`afx.h` 描述:该类用于序列化对象,即读写对象...

    conio.h头文件

    `conio.h`是一个非标准的C/C++头文件,主要用于处理控制台输入输出。它包含了许多与控制台交互相关的函数,比如屏幕操作、光标定位等。这些函数在早期的DOS环境下非常常用,在现代的Windows或Linux系统中虽然不是...

    c++自制game.h头文件

    以下是关于这个头文件可能包含的关键知识点: 1. **万能头文件(Universal Header File)**:这种头文件通常包含了开发者常用的库函数和宏定义,使得在编写代码时,只需要包含这一个头文件就能获得所需的所有功能,...

    c语言头文件.docx

    ### C语言头文件详解 C语言作为一种广泛应用的编程语言,其功能强大且灵活多变,这在很大程度上得益于其丰富的库支持。C语言中的库主要通过头文件来提供对外的功能接口,这些头文件包含了各种函数原型、数据类型...

    CoreFoundation.h_以及同目录下所有头文件

    在iOS和macOS开发中,CoreFoundation提供了一系列的C语言接口,用于处理基本的数据类型,如字符串、数组、字典和URL。在这个压缩包中,我们找到了CoreFoundation框架的一些关键头文件,包括`CFURL.h`、`CFString.h`...

    conio.h头文件C语言非标准库.rar

    《conio.h头文件在C语言中的应用及探讨》 在C语言编程中,我们经常会遇到一些非标准库,它们虽然不是C语言的标准组成部分,但因其便利性和实用性而在实际开发中广泛使用。其中,conio.h就是这样一个头文件,尤其在...

    windows.h头文件

    当我们在C或C++程序中包含windows.h时,实际上是在引入一系列的Windows API功能。 Windows.h头文件的主要功能包括: 1. **数据类型定义**:为了保证跨平台的兼容性,windows.h定义了一些特定的Windows数据类型,如...

    C语言头文件(.h文件)的作用

    C语言头文件(.h文件)的作用 C语言头文件(.h文件)在C语言编程中扮演着非常重要的角色,对于刚学编程的朋友来说,这篇文章可以算是一个非常有意义的分享。通过本文,我们将深入了解C语言头文件的作用,了解其在...

    软件延迟头文件 Delay.h

    在给定的压缩包文件中,"Delay.h"是一个头文件,它在C语言编程中扮演着重要的角色。头文件通常包含函数声明、宏定义和其他数据结构,供其他源代码文件(如"Delay.c")引用,以实现特定的功能。这里,我们重点讨论与...

    JNI的两个头文件jni.h和jni_md.h

    2. **生成JNI头文件**:使用`javah`工具,根据Java源代码生成对应的C/C++头文件,这个文件会包含`jni.h`中的函数声明,方便本地代码实现。 3. **实现本地方法**:在生成的C/C++源文件中实现本地方法,这里会用到`jni...

    intrins.h头文件介绍

    例如,`#ifndef __INTRINS_H__`和`#define __INTRINS_H__`确保`intrins.h`只在首次包含时被处理,之后的包含则会被忽略,这是C/C++中防止头文件重复包含的常见做法。 此外,`intrins.h`还可能包含其他特定编译器的...

    windows atl 族类头文件

    在描述中提到的"windows atl 族类头文件"是指用于开发ATL应用程序所需的头文件集合。 ATL头文件是实现COM编程的关键,它们包含了创建COM对象、接口、事件处理等核心功能的声明。以下是每个标签对应头文件的简要说明...

    apue头文件.rar

    《Unix环境高级编程》(Advanced Programming in ...通过深入学习和实践这些知识点,结合`unixapue.h`和`apueerror.h`头文件,你可以更好地理解和运用Unix环境高级编程技巧,为开发高质量的Unix应用程序打下坚实基础。

    C语言36:内部函数intrins.h应用举例.rar

    在C语言编程中,`intrins.h`是一个不常见的头文件,它包含了特定硬件平台上的内建函数,这些函数在编译时会被直接转化为特定的机器指令,从而提高程序的执行效率。通常,这些内建函数是针对处理器的特定功能,如SIMD...

    TI DSP 28335头文件.h

    在这个主题中,我们将深入探讨与TI DSP 28335相关的头文件`.h`,这些文件在C编程中扮演着至关重要的角色,它们包含了该处理器的各种定义、函数原型、结构体和其他必要的信息。 首先,头文件是C编程中的关键元素,...

    dirent.h头文件

    《dirent.h头文件在Unix/Linux系统中的应用与解析》 在编程领域,尤其是在操作系统相关的开发工作中,了解和掌握各种头文件的使用至关重要。本文将深入探讨“dirent.h”这个头文件,它是Unix和Linux系统中用于处理...

    STC8系列头文件

    STC8系列头文件是专为STC8微控制器设计的编程接口定义文件,这些头文件包含了用于编写C或C++程序的函数原型、宏定义和其他相关声明。STC8系列是STC公司生产的一系列单片机,以其低功耗、高性能和易于开发的特点在...

    symbian函数或类与头文件和LIB库对照表

    - **头文件**:`agmdate.h` - **LIB库**:`agnmodel.lib` #### AgnEntryStorer - **描述**:`AgnEntryStorer` 是一个用于存储日程条目的类,提供了一系列接口来存取和操作日程数据。 - **头文件**:`agementry.h` -...

Global site tag (gtag.js) - Google Analytics