8.8 头文件剖析:基本概念
为什么要有头文件?
C语言的历史遗留问题
局部编译:以C文件为单位进行编译,然后再进行链接
编译检查:变量、函数的声明
函数、变量的声明
先声明后使用
C语言的局部性:以文件为单位编译,防止编译错误
任何标识符在使用之前都要声明(跳转标签、main除外)
声明的方法
在函数内声明
在函数外声明
在头文件中声明
头文件作用
数据类型定义
宏定义
变量声明
函数声明
模块的接口导出
库的接口声明
变量的定义和声明有什么区别?
主要区别是是否产生内存分配的操作
变量的定义,最终会生成汇编相关操作、分配内存
变量的声明,是告诉编译器,该变量在其它地方定义
定义只能一次,声明可以多次
头文件会增加可执行文件的体积吗?
程序的编译、链接
头文件的预处理过程