我们刚开始学习编程的时候,写的第一个代码就是 Hello World
# include <stdio.h>
int main()
{
printf("Hello World\n");
return 0;
}
当我们在编译器上输入以上代码,点击编译按钮,那么就会输去Hello World。
但是我们有没有想过在点击编译按钮后到输出结果,我们的这个.c或.cpp文件是怎么运行的?
其实从.c或.cpp文件到可编译的.exe文件,我们要经过好几个步骤:
1.预编译 :(从.c文件到.i文件 gcc -E text.i -o text.c)
在预编译阶段,我们需要做的事情有:
1.将所有的“#define”删除,并且展开所有的宏定义
2.处理所有的条件编译指令,如:“#if”、“#ifdef”、“#elif”、“#else”、“endif”等。
3.处理“#include”预编译指令,将被包含的文件插入到该预编译指令的位置。(注意:这个过程可能是递归进行的,也就是说被包含的文件可能还包含其他文件)
4.删除所有的注释
5.添加行号,文件名标识,以便于编译时编译器