C/C++头文件和库文件的区别和联系
简单理解头文件就是让你的代码知道哪些东西是存在的,你是可以使用的。所以使用任何自定义、系统的函数、类等,都必须先包含头文件,否则编译器就告诉你***不存在。就是这个意思。
库的含义就是在头文件中声明的那些内容对应的实现是怎么样的。这些内容对客户是不需要可见的,只是在程序编译的时候,链接到客户的代码中即可,在运行的时候会加载到客户的进程中。
换句话说,库里边的内容是程序执行的关键。
1. cpp文件和.h文件有各自的分工,一般来说,h文件中是类的定义和类成员函数的声明,以及全局变量定义等;cpp文件是对应h文件中成员函数的代码实现。一般cpp文件代码较多。
这样做的好处:h文件只声明类成员函数,简单易懂,当其他文件要调用该类的接口时,只需包含该h文件,并在编译时将该h文件和同名cpp文件编译出的库文件一起连接即可。(如在lz写的main文件中只需 #include "Alarm.h")
2. 一般我们在编译的时候只编译cpp文件,将该cpp包含的h文件设为依赖。从而将这些cpp文件和h文件联系起来
库文件是将一系列的源文件进行编译打包,形成的二进制文件包,其中封装着函数接口,在编程中可以由其它源文件调用。库文件可分为静态库和动态库两种。
二者的区别为:
1 头文件是文本文件,是可供阅读的;库文件是二进制文件,不可直接阅读。
2 头文件在编译中使用;库文件在链接中使用。
3 头文件中是函数或定义的声明,及少量内联函数的使用,一般不包含非静态函数实现;库文件中包含函数的实现。
4 头文件是手动编写的,库文件是编译生成的。
二者也有联系:
1 虽然没有规定调用库函数必须引用头文件,但一般约定,当调用库函数的时候需要引用接口函数所在的头文件。
2 一个库文件均有一组头文件与其对应。
3 库文件和对应头文件的作者应为同一个。
4 作者必须保证头文件中所声明的函数类型及参数列表,与库文件中的实现是相同的。
一般头文件分两种
#include<文件名>
#include“文件名”
第一种,系统要系统目录中寻找要包含的文件,一般库函数都放在系统目录下,找不到的话,报错
第二种,在自己设置的目录中寻找,如果找不到,就到系统目录中寻找,再找不到,报错
一楼回答很好了,同学习~~
头文件中有函数的申明,库文件实现函数的定义。
比如,printf函数。使用时应包括stdio.h,打开stdio.h你只能看到,printf这
个函数的申明,却看不到printf具体是怎么实现的,而函数的实现在相应的C库
中。而库文件一般是以二进制形式而不是C源文件形式提供给用户使用的。程序
中包括了stdio.h这个头文件。链接器就能根据头件中的信息找到printf这个函
数的实现并链接进这个程序代码段里。
总结起来就是,库文件通过头文件向外导出接口。用户通过头文件找到库文件中
函数实现的代码从而把这段代码链接到用户程序中去。
C++中标准库与头文件以及函数之间的关系
标准库:就是很多代码文件的集合。这些文件s可以有很多函数或者函数声明又或者宏定义等等 头文件:后缀名为H的文件。你可以在你面前放置些东西你写的东西,当然系统也有些头文件不许动 函数:就是一小段能实现一定功能的代码。唯有这样解释~~
linux下编写c++,include的那些头文件在什么地方
C\/C++程序在linux下被编译和连接时,GCC\/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径。1、#include <stdio.h>,直接到系统指定目录去查找头文件。系统默认路径为:\/usr\/include,\/usr\/local\/include,\/usr\/lib\/gcc-lib\/i386-Linux\/2.95.2\/include(gcc库文件的路径,...
c++里面头文件,源文件,资源文件都是什么?
理解C++源文件编译过程与.h、.c文件的区别,需要从编译器的工作流程开始。编译器在处理时,主要分为三个阶段:预处理、编译和链接。首先,编译器会以.c文件为单位进行预处理。它会读取.c文件,遇到包含.h文件的指令,就会在所有搜索路径中寻找这些文件,将.h文件中的宏定义、变量声明、函数声明等处理...
寻求C\/C++中stdlib.h头文件下的库函数
这些整理可能存在错误和遗漏,请谅解。atof()函数用于将字符串转换为浮点数。其原型为:double atof(const char *s)。此函数将字符串`s`转换为双精度浮点数。字符串格式为符号、数字、E符号、数字。返回转换值。头文件:math.h、stdlib.h。atoi()函数将字符串转换为整型数。原型为:int atoi(const ...
c++头文件有哪些?
一个完整的程序由程序号, 程序内容和程序结束三部分组成。1,头文件:头文件包含要在程序中调用的库函数(例如printf、scanf等)包含在头文stdio.h中。Sin、Tan、sqrt和数学计算中使用的其他函数包含在头文件math.h中。在程序中调用库函数,和#include或#include“头文件名”必须写在程序的开头。2. ...
为什么C++6.0中,经常是添加了头文件和库文件后,还要在Link中添加一些Li...
有一些LIB目录是系统调用所需,在编译过程中,系统的一般在设置的目录中去找,如果是你自己开发的DLL和LIB文件,则需要手动添加,可以不用在LINK里加,直接在函数体头文件处载入即可.pragma comment(lib, "yourdll.lib");
C语言中新建一个C\/C++头文件和一个与C\/C++源文件有什么区别?
编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行。也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的。如果想要学写头文件,可以参照标准C\/C++库的h文件。
C++中的头文件是什么意思?
而定义文件用于保存程序的实现 (implementation)。 .c就是你写的程序文件。头文件一般由四部分内容组成:(1)头文件开头处的版权和版本声明;(2)预处理块;(3)inline函数的定义;(4)函数和类结构声明等。在头文件中,用 ifndef\/define\/endif结构产生预处理块,用 #include 格式来引用库的头文件。
c++标准库头文件在哪个目录下
C++标准库头文件,不同的编译器默认路径不相同。Vc6.0一般在安装目录下的\\VC98\\INCLUDE目录,比如C:\\Program Files (x86)\\Microsoft Visual Studio\\VC98\\INCLUDE。Vs一般在位于$VSPATH\\VC\\include路径下面。gcc一般默认在 \/usr\/include目录下。
C++ 里面的头文件是什么意思,具体,好评
通常,在一个C++程序中,只包含两类文件——.cpp文件和.h文件。其中,.cpp文件被称作C++源文件,里面放的都是C++的源代码;而.h文件则被称作C++头文件,里面放的也是C++的源代码。C+ +语言支持“分别编译”(separate compilation)。也就是说,一个程序所有的内容,可以分成不同的部分分别放在不同的.cpp文件里。....