美文网首页
关于头文件和库文件

关于头文件和库文件

作者: 简公孙策 | 来源:发表于2020-11-21 13:23 被阅读0次

头文件是指在C/C++编程中,可以写在程序里面,以#include 的形式包含的文件。对于C语言,一般以.h作为扩展名;对于C++,可以没有扩展名,也可以以.h或者.hpp做扩展名。规范中对头文件的扩展名并没有做约定。
库文件是将一系列的源文件进行编译打包,形成的二进制文件包,其中封装着函数接口,在编程中可以由其它源文件调用。库文件可分为静态库和动态库两种。
二者的区别为:
1 头文件是文本文件,是可供阅读的;库文件是二进制文件,不可直接阅读。
2 头文件在编译中使用;库文件在链接中使用。
3 头文件中是函数或定义的声明,及少量内联函数的使用,一般不包含非静态函数实现;库文件中包含函数的实现。
4 头文件是手动编写的,库文件是编译生成的。
二者也有联系:
1 虽然没有规定调用库函数必须引用头文件,但一般约定,当调用库函数的时候需要引用接口函数所在的头文件。
2 一个库文件均有一组头文件与其对应。
3 库文件和对应头文件的作者应为同一个。
4 作者必须保证头文件中所声明的函数类型及参数列表,与库文件中的实现是相同的。


以上是复制别人的,个人总结一下:

  • 头文件是未编译的文本(源代码)文件,而库文件是实现了某些功能的已经编译好的二进制文件
  • 在功能的关系上,头文件是库文件的说明文件,头文件类似于库文件的使用说明书。有点像java中接口和实现其的类的关系。头文件负责说明提供了哪些功能,以及怎么调用;但是具体的实现这些功能的代码是在已经编译好的库文件中的。
  • 头文件是在编译阶段使用的,比如我们编写了一段代码,但是要调用其他库中的接口(函数),但是像c语言和java等语言是编译型语言,所以编译器没法直接去已经编译好的库文件中去查找相关代码,来判断当前调用的可行性,那么需要通过库文件的说明书--头文件,即在代码的开头通过#include<stdio.h>、#include<math.h> 这种方式来引入头文件。这样编译器编译我们的源代码文件的时候会去头引入的头文件中检查是否有我们调用的别人的函数。这样编译才能通过和完成。
  • 库文件是编译好的二进制代码是,是程序要被执行时,被链接加载进内存时使用的。

相关文章

  • 关于头文件和库文件

    头文件是指在C/C++编程中,可以写在程序里面,以#include 的形式包含的文件。对于C语言,一般以.h作为扩...

  • C++:静态库、动态库、头文件

    C++中提供某个库,往往有三种方法: 头文件(.h)+静态库(.a) 头文件(.h)+动态库(.so) 头文件(....

  • 引入ffmpeg库

    引入ffmpeg库 将ffmpeg库文件及头文件拷贝到项目中 引入库文件和头文件 关闭沙箱 将ffmpeg库文件及...

  • C++ Primer 笔记

    P19:包含头文件的语法包含来自标准库的头文件时,使用< >,而对于非标准库头文件,使用“ ”。如: P19:文件...

  • Include of non-modular header in

    产生原因 pod 私有库中依赖其他库,在头文件中引用了依赖库的头文件 解决办法: 1 去掉头文件中的依赖,放在.m...

  • 关于gcc

    gcc的文件组成 gcc内部使用的程序: gcc涉及到的头文件 gcc涉及到的库文件 关于库文件的链接顺序 gcc...

  • GeekBand.重学C++(1)

    0x01. 关于头文件 头文件保护 头文件保护,是为了避免重复包含头文件中的声明和定义,导致重定义错误或者编译器找...

  • 2020-02-18关于静态库的制作方法

    一、关于framework的封装1.新建 2.修改配置为静态库 3.添加代码 4.配置暴露的头文件 5.头文件导入...

  • CTP软件开发笔记1—软件的配置

    编程语言:C++编译软件:VS2012一,创建一个MFC程序 二,配置头文件库和lib库1、添加工程的头文件目录:...

  • airkiss 文章二

    一 AirKiss 库文件组成 AirKiss 库由以下文件组成: airkiss.h: AirKiss 库头文件...

网友评论

      本文标题:关于头文件和库文件

      本文链接:https://www.haomeiwen.com/subject/yjasiktx.html