1. C语言的编译步骤

1. C语言的编译步骤

1.1 预处理

  • 带#的语句就是预处理指令, 预处理指令在预处理的时候处理了
  • 头文件展开: #include 包含stdio.h (预处理将stdio.h文件拷贝至预处理文件中)
  • 宏替换: #define 代表是声明一个宏, 在预处理时会将宏文件对应的值替换
  • 预处理不会检查语法错误
  • 条件不成立 #if 0 -> #endif , 条件成立 #if 1 -> #endif
#include 
#define PI 3.14
int main(){
    #if 0
    printf("hello", PI);
    return 0;
    #endif
}

1.2 编译

将预处理文件变成汇编文件


  • 检查语法错误

1.3 汇编

将汇编文件变成二进制文件.o


1.4 链接

设置运行环境, 堆栈等, 链接其他库


  • 链接命令最后变成.exe文件
    可以成功运行

你可能感兴趣的:(1. C语言的编译步骤)