+题目:一个C++源文件从文本到可执行文件经历的过程?
【答案】
对于C++源文件,从文本到可执行文件一般需要四个过程:
预处理阶段:对源代码文件中文件包含关系(头文件)、预编译语句(宏定义)进行分析和替换,生成预编译文件。
编译阶段:将经过预处理后的预编译文件转换成特定汇编代码,生成汇编文件
汇编阶段:将编译阶段生成的汇编文件转化成机器码,生成可重定位目标文件
链接阶段:将多个目标文件及所需要的库连接成最终的可执行目标文件
+题目:说说include头文件的双引号""和尖括号<>的区别?
【答案】
这是因为编译器预处理阶段查找头文件路径的顺序不一致。
对双引号头文件的查找顺序:
1.编译器首先查找当前项目目录里的头文件(通常情况下,该头文件就是我们自定义的头文件)
2.然后就是编译器设置的头文件路径
3.系统变量指定的头文件路径
对尖括号头文件的查找顺序:
1.编译器设置的头文件路径
2.系统变量指定的头文件路径
题目:源码到可执行文件的过程?(源自某博文)
【答案】
1)预编译
主要处理源代码文件中的以“#