gcc是一个编译器,可以将高级语言c语言编译成机器可以识别的语言。
首先,我们先说一下gcc工作流程
预处理: 去掉注释,展开代码
编译: 语法语义纠错,将c语言解释成为汇编代码
汇编: 将汇编代码解释成为机器语言.
链接: 链接库文件中的代码.
gcc常用选项
-E 只进行预处理 生成.i
-S 只进行编译 生成.s
-c 自进行汇编 生成.o
-o 用于指定生成的文件名称.
-static 使用静态链接.
-I 包含头文件路径
-L 包含库文件路径
-O 优化选项
!gcc 执行最近一次的执行编译命令.
**例如: gcc -E main.c -o app.i **
一般 使用 gcc hello.c -o app 生成app可执行程序。
下图为在Linux下的示范:
我们在clude目录下创建了一个head.h文件
#include<stdio.h>
int add(int a,int b);
然后在我们在clude同级目录ttt里创建一个add.c源程序。
#include<stdio.h>
#include"head.h"
int main(void){
int c;
int a=10;
int b=10;
printf("%d",add(a,b));
return 0;
}
int add(int a,int b){
return a+b;
}
然后使用命令: