吾爱汇编

 找回密码
 立即注册

QQ登录

绑定QQ避免忘记帐号

查看: 2094|回复: 6

[C/C++] 【转载】C语言标准库以及标准头文件

[复制链接]
红颜世家、 发表于 2015-11-14 10:46 | 显示全部楼层 |阅读模式

源文件通过编译可以生成 .obj 文件(二进制库文件),并提供一个头文件向外暴露接口,除了保护版权,还可以将散乱的文件打包,便于发布和使用。

实际上我们一般不直接向用户提供 .obj 文件,而是将多个 .obj 文件打包成 .lib 文件(静态库)或 .dll 文件(动态库)。

.obj 打包成 .lib 或 .dll 也要经过链接的过程来找到函数入口、变量声明等,在VC中可以直接创建相应的工程来生成(与创建 Win32 Console Application 类似,后续会讲解)。

.lib 和 .dll 可以看成是一堆 .obj 的集合,虽然有入口函数,但不能直接运行,必须被链接到 .exe 或被 .exe 调用。

C语言在发布时已经将常用的函数、宏、类型定义等打包到了静态库,并提供了相应的头文件。如果你使用的是VC,那么在安装目录下的 \VC98\Include\ 文件夹中会看到很多头文件,包括我们常用的 stdio.h、stdlib.h 等;在 \VC98\Lib\ 文件夹中有很多 .lib 文件,这就是我们链接时要用到的静态库。

例如我的 VC6.0 安装在 C:\Program Files\Microsoft Visual Studio\ 目录,那么 VC6.0 附带的所有头文件都在 C:\Program Files\Microsoft Visual Studio\VC98\Include\ 目录下,所有 .lib 文件都在 C:\Program Files\Microsoft Visual Studio\VC98\Include\Lib\ 目录下。

如果忘记 VC6.0 的安装目录或者头文件不在安装目录下,可以通过以下方式找到:

1) 在工具栏中点击“工具”按钮

2) 在二级菜单中选择“选项”

3) 在弹出的对话框中选择“目录”标签

4) 然后选择名字为“目录”的下拉菜单中的“Include files”一项,如下图所示:

                               
登录/注册后可看大图

ANSI C 规范共定义了 15 个头文件,称为“C标准库”,所有的编译器都必须支持,如何正确并熟练的使用这些标准库,可以反映出一个程序员的水平:
合格程序员:<stdio.h>、<ctype.h>、<stdlib.h>、<string.h>
熟练程序员:<assert.h>、<limits.h>、<stddef.h>、<time.h>
优秀程序员:<float.h>、<math.h>、<error.h>、<locale.h>、<setjmp.h>、<signal.h>、<stdarg.h>

各个头文件的具体内容请查看:C语言标准库

除了C标准库,编译器一般也会附带自己的库,以增加功能,方便用户开发,争夺市场份额。这些库中的每一个函数都在对应的头文件中声明,可以通过 #include 预处理命令导入,编译时会被合并到当前文件。

注意:引入编译器自带的头文件(包括标准头文件)用尖括号,引入自定义头文件用双引号,例如:
#include <stdio.h>
#include "myFile.h"

评分

参与人数 6HB +4 THX +5 收起 理由
消逝的过去 + 1
agan8888 + 1
sunlewuyou + 1 + 1 分享精神,是最值得尊敬的!
圈瞳 + 1 + 1 分享精神,是最值得尊敬的!
一切都会过去 + 1 + 1 欢迎原创软件增加“学破解论坛专版”,额外增加20HB,么么哒~
23123123 + 1 学破解论坛1周年了,感谢大家的付出与关注。学破解论坛助你呼风唤雨!!!

查看全部评分

吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Heaven丶衫 发表于 2015-11-14 10:51 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
Mrsin 发表于 2015-11-14 11:12 | 显示全部楼层

转载内容有点刷版了 建议楼主总结到一帖内或者是分到 1-3个帖子中
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
 楼主| 红颜世家、 发表于 2015-11-14 18:16 | 显示全部楼层

Mrsin 发表于 2015-11-14 11:12
转载内容有点刷版了 建议楼主总结到一帖内或者是分到 1-3个帖子中

大大...我主要不知道该怎么制作chm
一共提取了86章节....
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
云外飞鸟 发表于 2016-4-10 21:42 | 显示全部楼层

楼主好,,你写的不错啊
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
tyhjrwx2015 发表于 2016-5-23 21:14 | 显示全部楼层
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
wuchenziye 发表于 2018-2-3 12:37 | 显示全部楼层

学习了,谢谢分享。
吾爱汇编论坛-学破解,防破解!知进攻,懂防守!逆向分析,软件安全!52HB.COM
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

警告:本站严惩灌水回复,尊重自己从尊重他人开始!

1层
2层
3层
4层
5层
6层
7层

免责声明

吾爱汇编(www.52hb.com)所讨论的技术及相关工具仅限用于研究学习,皆在提高软件产品的安全性,严禁用于不良动机。任何个人、团体、组织不得将其用于非法目的,否则,一切后果自行承担。吾爱汇编不承担任何因为技术滥用所产生的连带责任。吾爱汇编内容源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除。如有侵权请邮件或微信与我们联系处理。

站长邮箱:SharkHeng@sina.com
站长QQ:1140549900


QQ|RSS|手机版|小黑屋|帮助|吾爱汇编 ( 京公网安备11011502005403号 , 京ICP备20003498号-6 )|网站地图

Powered by Discuz!

吾爱汇编 www.52hb.com

快速回复 返回顶部 返回列表