首页 理论教育 Linux系统编程:GCC实用指南

Linux系统编程:GCC实用指南

时间:2023-11-16 理论教育 版权反馈
【摘要】:gcc 4-9.c –o 4-9步骤3:运行程序./4-92.GCC编译流程GCC编译流程如图4.2所示。图4.2GCC编译流程例4.10设计一个程序,要求输入两个整数,求和输出。通过使用GCC的参数,控制GCC的编译过程,了解GCC的编译过程,进一步感受GCC的灵活性。gcc 4-10.i -o 4-10.s -Svim 4-10.s步骤4:汇编阶段。在没有参数指定时,GCC到系统默认的路径“/usr/lib”下查找,链接到libc.so.6库函数中去,这样就有了printf和scanf函数的实现部分。完成链接后,GCC就可以生成可执行程序文件。scanf函数说明如表4.4所示。

Linux系统编程:GCC实用指南

1.GCC指令的一般格式

gcc[参数]要编译的文件[参数][目标文件]

例4.9 设计一个程序,要求把输入的百分制的成绩转换成五级制输出。输入成绩大于等于90分,显示“优秀”;若成绩介于80~90分,显示“良好”;若成绩介于70~80分,显示“中等”;若成绩介于60~70分,显示“及格”;若成绩小于60分,显示“不及格”。

步骤1:编辑源程序代码

打开文件:vi 4-9.c

在4-9.c文件中输入以下程序代码:

步骤2:用gcc编译程序

gcc 4-9.c –o 4-9

步骤3:运行程序

./4-9

2.GCC编译流程

GCC编译流程如图4.2所示。

图4.2 GCC编译流程

例4.10 设计一个程序,要求输入两个整数,求和输出。通过使用GCC的参数,控制GCC的编译过程,了解GCC的编译过程,进一步感受GCC的灵活性。

步骤1:编辑源程序代码。

打开文件:vi 4-10.c(www.xing528.com)

在4-10.c文件中输入以下程序代码:

步骤2:预处理阶段。

gcc 4-10.c -o 4-10.i -E

vim 4-10.i

步骤3:编译阶段。

gcc 4-10.i -o 4-10.s -S

vim 4-10.s

步骤4:汇编阶段。

gcc 4-10.s -o 4-10.o -c

步骤5:链接阶段。

Linux系统把printf和scanf函数的实现,都放在了libc.so.6的库文件中。在没有参数指定时,GCC到系统默认的路径“/usr/lib”下查找,链接到libc.so.6库函数中去,这样就有了printf和scanf函数的实现部分。把程序中一些函数得以实现,这是链接阶段的工作。

完成链接后,GCC就可以生成可执行程序文件。

注意:GCC在编译的时候默认使用动态链接库,编译链接时并不把库文件的代码加入可执行文件中,而是在程序执行的时候动态加载链接库,这样可以节省系统开销。

scanf函数说明如表4.4所示。

表4.4 scanf函数

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈