PX-9-c语言的预编译编译和连接的过程

 

1.1 C语言编译过程,gcc参数简介

1.1.1 C语言编译过程

流程:

在GCC下进行预编译vc 没有提供预编译流程;

预编译:x.c文件 先进行 gcc -E  x.c 将c文件所包含的头文件等文件写进来 | 存放在 y.c中 gcc -E x.c -o y.c  把带#的全部处理了

汇编编译:将 x.c 文件转化成汇编语言进行  gcc -S a.c  生成文件  a.s 将语句执行为汇编语言 但是并没有将所包含的文件拉过来

二进制编译:将文件 进行编译成  gcc -C x.c  -  生成 .obj .o程序 只实现将汇编代码翻译成二进制

链接: 二进制没有加载任何函数 要加载 system printf 等函数才能进行执行 , gcc x.c -o b.exe 这个exe文件可以直接执行

 

总结:

将预编译好的.c .h 代码编译成obj或.o的二进制文件

链接obj文件和它要调用的库文件进行打包生成可执行文件exe

 

 

 

 

1.1.2 -E预编译

Gcc –E –o a.e a.c

预编译a.c文件,生成的目标文件名为a.e

预编译是将include包含的头文件内容替换到C文件中中,同时将代码中没用的注释部分删除

 

1.1.3 -S汇编

-s就是将c语言转化为汇编语言,

1.1.4 -c编译

将代码编译为二进制的机器指令

1.1.5 链接

Gcc没有任何参数,代表就是链接

 

posted @ 2016-12-09 16:41  silvercell  阅读(1834)  评论(0)    收藏  举报