linux软件工程师C语言实用教程》第1章

linux软件工程师C语言实用教程》第1章

ID:38567513

大小:675.50 KB

页数:38页

时间:2019-06-15

linux软件工程师C语言实用教程》第1章_第1页
linux软件工程师C语言实用教程》第1章_第2页
linux软件工程师C语言实用教程》第1章_第3页
linux软件工程师C语言实用教程》第1章_第4页
linux软件工程师C语言实用教程》第1章_第5页
资源描述:

《linux软件工程师C语言实用教程》第1章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第1章Linux系统程序设计基础本章重点编辑、编译及运行Linuxc程序gcc编译器的使用gdb调试器的使用21.1第一个Linuxc程序例1-1:设计一个程序,要求在屏幕上输出“这是第一个Linuxc程序!”。步骤1:设计编辑源程序代码使用文本编辑器vim,在终端中输出:[root@localhostroot]#vim1-1.c输入完成后存盘:按ESC键→输入“:wq”回车31.1第一个Linuxc程序步骤2:编译程序查看当前目录下是否有1-1.c文件,输入命令:[root@localhostroot]#ls1-1.c编译:[root@localhostroot]#gcc

2、1-1.c-o1-1[root@localhostroot]#步骤3:运行程序[root@localhostroot]#ls1-1.c1-1[root@localhostroot]#./1-1这是第一个Linuxc程序!41.1第一个Linuxc程序Linux下的文本编辑器软件主要有vim、gedit和Emacs,Linux下的c编译器中,gcc是功能最强大、使用最广泛的软件。gcc编译的常用格式为:gccC源文件-o目标文件名或:gcc-o目标文件名C源文件或:gcc目标文件名最后一种情况目标文件名默认为:c.out51.1第一个Linuxc程序printf函数说明思考题

3、:设计一个程序,要求在屏幕上输出:************61.2gcc编译器gcc是(GNUCmpilerCollection的简称),它是GNU项目中符合ANSIC标准的编译系统,能够编译用C、C++和ObjectC等语言编写的程序。gcc不仅功能十分强大,结构也异常灵活。它可以通过不同的前端模块来支持各种语言,如Java、Fortran、Pascal、Modula-3和Ada等。gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比,平均效率要高20%~30%。gcc支持编译的后缀名:71.2.1使用gccgcc指令的一般格式为:gcc

4、[参数]要编译的文件[参数][目标文件]例1-2:设计一个程序,要求把输入的百分制的成绩转换成五级制输出。即输入成绩大于等于90分,显示“优秀”;若成绩介于80~90分,显示“良好”;若成绩介于70~80分,显示“中等”;若成绩介于60~70分,显示“及格”;若成绩小于60分,显示“不及格”。81.2.1使用gcc步骤1:编辑源程序代码[root@localhostroot]#vim1-2.c91.2.1使用gcc步骤2:用gcc编译程序[root@localhostroot]#gcc1-2.c–o1-2步骤3:运行程序[root@localhostroot]#./1-2思

5、考题:设计一个程序,要求输入一个数,如果此数大于0,显示“输入的为正数”,否则显示“输入的为负数”。101.2.2gcc编译流程111.2.2gcc编译流程例1-3:设计一个程序,要求输入两个整数,求和输出。通过使用gcc的参数,控制gcc的编译过程,了解gcc的编译过程,进一步认识gcc的灵活性。步骤1:编辑源程序代码[root@localhostroot]#vim1-3.c121.2.2gcc编译流程步骤2:预处理阶段[root@localhostroot]#gcc1-3.c–o1-3.i–E[root@localhostroot]#vim1-3.i步骤3:编译阶段[r

6、oot@localhostroot]#gcc1-3.i–o1-3.s–S[root@localhostroot]#vim1-3.s步骤4:汇编阶段[root@localhostroot]#gcc1-3.s–o1-3.o–c131.2.2gcc编译流程步骤5:链接阶段Linux系统把printf和scanf函数的实现,都放在了libc.so.6的库文件中。在没有参数指定时,gcc到系统默认的路径“/usr/lib”下查找,链接到libc.so.6库函数中去,这样就有了printf和scanf函数的实现部分。把程序中一些函数的实现,这是链接阶段的工作。完成链接后,gcc就可以生

7、成可执行程序文件注意:gcc在编译的时候默认使用动态链接库,编译链接时并不把库文件的代码加入到可执行文件中,而是在程序执行的时候动态加载链接库,这样可以节省系统开销。141.2.2gcc编译流程scanf函数说明151.2.3gcc编译器的主要参数1.总体参数当头文件与gcc不在同一目录下要用-Idir编译,它是指头文件,而添加库文件时需用-Ldir参数。161.2.3gcc编译器的主要参数例1-4:设计一个程序,要求把输入的字符串原样输出,程序中的头文件自己定义,源程序文件为“1-4.c”,自定义的头文件为“my

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。