- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
gcc及gdb使用Linux下C编程概述C语言具备如下特点:(1)把高级语言的基本结构和语句与低级语言的实用性结合起来,可以像汇编语言一样对位、字节和地址进行操作,更接近于硬件设备,因此执行效率很高;(2)具有强大的图形处理功能(3)具有多种数据类型,并引入指针概念,使程序效率更高;(4)是结构化的语言,采用代码及数据分隔,使程序的各个部分除必要的信息交流外彼此独立,层次清晰,便于使用、维护以及调试;(5)可移植性强,适合诸如DOS、Windows和Linux等多种操作系统及体系结构,尤其适合在嵌入式领域的开发。程序执行一般过程编译过程描述gcc编译工具参数作用-E只运行C预编译器,配合-o可指定得到预处理过的.i文件-S配合-o将预处理输出文件.i文件汇编成扩展名为.s的汇编语言源代码文件-c只编译并生成后缀名为.o的目标文件,不连接成为可执行文件-o 指定可执行文件的名称,如果不加该参数,可执行文件默认名为a.out-g产生调试工具Gdb所必要的符号信息,要调试程序,必须加入该选项-O编译、链接时优化,产生效率更高的可执行文件,编译链接速度相应减慢-O2比-O效果更好的优化选项,同时对应的编译链接速度会更慢-l将该参数后跟的目录加入到程序头文件列表中-L首先到该参数后跟的目录中寻找所需要的库文件-w不生成任何警告信息-Wall生成所有警告信息-MM自动生成源文件和目标文件的依赖关系gcc使用方法简介gcc [参数...] [文件名...]gcc编译工具程序实例:#includestdio.hint main(){printf(hello world!\n);return 0;}[jacky@bogon c]$ gcc helloworld.c [jacky@bogon c]$ lsa.out helloworld.cgcc编译工具执行a.out时需要在其前面加上“./”才可正确执行,原因是可执行文件所在的目录没有包含在环境变量PATH的值中[jacky@bogon c]$ export PATH=$PATH:.[jacky@bogon c]$ a.outhello world如果需要修改可执行文件的名字,可以使用-o参数直接指定[jacky@bogon c]$ gcc helloworld.c –o helloworld[jacky@bogon c]$ lsa.out helloworld helloworld.cGcc编译流程Gcc编译流程预处理阶段可以使用-E参数来进行预处理并终止编译,得到扩展名为.i的预处理文件,然后使用cat命令查看文件内容。[jacky@bogon c]$ gcc –E helloworld.c –o helloworld.i[jacky@bogon c]$ cat helloworld.i使用-S参数来查看编译阶段的执行效果[jacky@bogon c]$ gcc –S helloworld.i –o helloworld.s[jacky@bogon c]$ cat helloworld.s汇编过程是处理汇编语言的阶段,主要调用汇编处理程序完成将汇编语言汇编成二进制机器代码的过程,该过程将扩展名为.s 的汇编语言代码文件汇编为扩展名为.o的目标文件。所生成的目标文件作为下一步链接过程的输入文件。[jacky@bogon c]$ gcc –c helloworld.s –o helloworld.o链接阶段[jacky@bogon c]$ gcc helloworld.o –o helloworldgdb用法详解命令作用file后跟需要载入调试的可执行文件名称kill 终止正在调试的程序list 列出产生执行文件的源代码的一部分next 执行一行源代码但不进入函数内部step 执行一行源代码而且进入函数内部run 执行当前被调试的程序continue继续执行quit 终止 gdbwatch 使你能监视一个变量的值而不管它何时被改变print 显示表达式的值break 在代码里设置断点, 这将使程序执行到这里时被挂起make 不退出 gdb 就可以重新产生可执行文件shell 不离开 gdb 就执行 shell 命令gdb命令及对应作用表Make工程管理器多个c语言源程序,可以使用Make工程管理器来提高效率,只需要编写makefile文件制定相应的编译和链接规则,然后在终端执行make命令就可以高效方便的完成最后的编译工作,且如果以后修改个别文件时,make会自动检查出哪些文件被修改过,从而只对这些文件再次进行编译,保证最终的可执行文件是由最新的模块构建的。Make工程管理器工程管理相关语法makefile文件中语句通常遵循格式如下:目标(target):依赖文件 (dependency_fi
您可能关注的文档
最近下载
- 重症护理夜班值班课件.pptx VIP
- 医用空压机基础知识培训课件.pptx VIP
- 2026版高考物理专题提升练习-动量守恒在子弹打木块模型和滑块.docx VIP
- SICK西克KTS&KTX Prime色标传感器操作手册.pdf VIP
- 10.1《 劝学》课件(共36张PPT) 2024-2025学年统编版高中语文必修上册.pptx VIP
- 梅州围龙屋一种富有特色的典型客家围村建筑.pptx VIP
- SICK西克KTS&KTX Prime操作手册.pdf VIP
- [2025秋期版]国开电大专科《人力资源管理》一平台形考任务一至四在线形考试题及答案 (2).pdf
- 模型1弹簧模型-动量守恒的九种模型解读.docx VIP
- 二年级数学上册北师版25秋《小学学霸A卷》.pdf VIP
文档评论(0)