C/C++的基本编译和执行过程

C/C++的基本编译和执行过程

  • 预处理

    命令:g++ -E test.cpp > test.i

    输入一个.cpp文件 主要工作:将头文件展开;宏展开;

    生成一个.i文件

  • 编译

    命令:g++ -g -S test.cpp //生成一个.s的汇编文件

    主要工作:词法分析,语法分析,语义分析,代码优化,代码生成

    生成一个.asm文件(汇编代码)将.asm文件生成一个.o(.obj)文件(二进制文件)

  • 链接

    主要工作: 将不同的.obj文件找到合适的地址等处理,生成一个.exe可执行文件

  • 执行可执行文件

image-20210419220449691

原文地址:https://www.cnblogs.com/bear-Zhao/p/14680793.html