C/C++的基本编译和执行过程
C/C++的基本编译和执行过程
-
预处理
命令:
g++ -E test.cpp > test.i
输入一个.cpp文件 主要工作:将头文件展开;宏展开;
生成一个.i文件
-
编译
命令:
g++ -g -S test.cpp //生成一个.s的汇编文件
主要工作:词法分析,语法分析,语义分析,代码优化,代码生成
生成一个.asm文件(汇编代码)将.asm文件生成一个.o(.obj)文件(二进制文件)
-
链接
主要工作: 将不同的.obj文件找到合适的地址等处理,生成一个.exe可执行文件
-
执行可执行文件