C预处理器_基础知识
来源:互联网 发布:网络漫画家朴泰俊 编辑:程序博客网 时间:2024/05/17 22:39
编译前的准备
- 空白字符替换为一个空格(换行符除外)
- 注释替换为一个空格
- 把源代码里面的字符映射到源字符集
- 定位反斜杠,把多个物理行变为一个逻辑行
define宏
- 代码中引用宏的位置,直接用宏定义替换
- 带参数的宏,需要在参数和宏定义表达式外面加上括号
- 宏定义为大写字母,长度为一行
include头文件
- 包含头文件的Include行直接被头文件里的代码替换
- 如果头文件里面有头文件,也用相关的代码替换
- Include和define本质上都是复制粘贴操作
inline内联函数
- 定义: inline 和 static关键字
- 为了减少函数调用的开销,因为函数调用过程中,建立调用,传递参数,跳转代码以及返回结果都会耗费资源
- 和define宏也可以使代码内联
- 内联函数也可能不起作用
- 内联函数应定义在第一次使用的文件中
- 如果多个文件都要使用内联函数,可以把内联函数写在头文件中,在使用该内联函数的文件中包含该头文件
标准库
- 数学库
- 通用工具库
- 断言库
c标准
C标准不仅描述C语言,还描述了组成C语言的软件包、C预处理器和C
标准库。通过预处理器可以控制编译过程、列出要替换的内容、指明要编译的代码行和影响编译器其他方面的行为。C库扩展了C语言的作用范围,为许多编程问题提供现成的解决方案。
阅读全文
0 0
- C预处理器_基础知识
- C语言_预处理命令
- 黑马程序员-C语言基础知识-预处理
- C语言-编译预处理_笔记
- C语言程序设计教程笔记_编译预处理
- C++_函数模板基础知识
- C++_类模板基础知识
- C++_函数模板基础知识
- C预处理器1
- C预处理器标识
- C语言预处理器
- C预处理器简介
- C语言-预处理器
- C预处理器
- C中的预处理器
- c预处理器
- C预处理器#、##、__VA_ARGS__
- C的预处理器
- Java三大特性
- Java并发编程实战 AQS(四):CLH同步队列
- 一个java小代码
- iOS 手势解锁密码
- Linux 静态网卡配置
- C预处理器_基础知识
- unity性能优化
- 理解长短期记忆网络(LSTM NetWorks)
- codevs 1018 单词接龙
- SSM-2 项目规划
- [BZOJ4650][NOI2016]优秀的拆分-后缀数组
- Java知识小结—(2)
- Going Home POJ
- 欢迎使用CSDN-markdown编辑器