文章目录 1.被隐藏的过程 1.1预编译 1.2编译 1.2.2 词法分析 1.2.2 语法分析 1.2.3 语义分析 12.24 中间语言生成 1.2.5 目标代码的生成和优化 1.3汇编 1.4 链接 1.4.1 静态链接 1.4.1.1 什么是链接 1.4.1.2 为什么需要链接 1.被隐藏的过程 每一个hello world的生成都会伴随着四个被隐藏起来的步骤,分别是预处理, 编译, 汇编, 链接 1.1预编译 首先是源代码文件hello.c和相关头文件,如stdio.h等被预编译器cpp预编译成一个.i文件 第一步预编译的过程相当于如下命令 gcc -E hello.c -o hello.i 预编译过程主要处理的规则如下 将所有的#define删除,并展开所有的宏定义 处理所有条件预编译指令,比如#if, #ifdef, #elif, #else,