- 论坛徽章:
- 95
|
本帖最后由 MMMIX 于 2014-04-27 18:33 编辑
listenxu 发表于 2014-04-27 17:48
因为不是计算机专业科班出生,所以编译原理之类的没有什么概念,做一步学一步
对这些不了解就规规矩矩来,该包含的头文件你就老老实实的包含,不要老想着投机取巧,也没必要胡乱找些文章把自己看的一头雾水。最容易出问题的就是一知半解还自作聪明。
喷完了这种不靠谱的行为,来点头文件的介绍。
C 头文件:
1、谁处理?
C 的预处理器会查找、包含、并处理头文件。
2、头文件通常有些什么内容?
a. 常数定义(通过宏)
b. 宏定义
c. 类型定义 (struct, typedef 等)
d. 函数原型、变量声明
e. inline 函数、变量定义
f. 其他
3. 不包含需要的头文件会有什么问题?
a. 编译出错,例如类型未定义
b. 编译有警告但是可通过,不过运行会出错
c. 编译有警告但可通过,当时运行也没问题,但是换个环境(例如换了编译器,或现有编译器、依赖库升级,或换了操作系统),结果程序就运行出错了。
在你搞不清楚不包含头文件会有什么问题的时候,就老老实实的按照要求包含需要的头文件。
|
|