收藏 分销(赏)

linux环境下C编程.doc

上传人:仙人****88 文档编号:12024837 上传时间:2025-08-29 格式:DOC 页数:8 大小:38KB 下载积分:10 金币
下载 相关 举报
linux环境下C编程.doc_第1页
第1页 / 共8页
linux环境下C编程.doc_第2页
第2页 / 共8页


点击查看更多>>
资源描述
Linux环境下C 语言编程 这里向大家介绍一下在Linux/UNIX 的机器上,进行 C/C++ 编程的一些入门级知识。 · 所需具备的背景知识 · 开发所需的基本环境 · 获得帮助的途径 · 通过一个实例了解基本步骤 Prerequisite 先决条件: 在Linux上编写 C 程序,至少要熟悉以下两方面的基础知识: 1. C语言的编程基础,至少要知道一些基本的语法,控制流程等编程常识。 对常用的标准 C 函数库有常识性的了解。 2. 对Linux/UNIX 的操作有常识性的了解,掌握常用的shell 命令,如 ls, cat, cp, mkdir …etc. Environment 所需环境: 1. Linux/ Unix 的操作系统,也可以使用windows下的cygwin。 我们这里讨论的都是通过shell命令行进行操作的。那如果进入了图形界面的Linux 怎么办呢?只要打开一个终端命令,就和命令行环境完全一样了(打开开始菜单可以找到终端命令)。 2. 必备的开发工具: 1) 输入程序需要一个编辑器。常用的有 vi , emacs. 在命令行上输入 vi, emacs, … 就可进入编辑环境 关于 vi 关于 EMACS 2) C语言的编译器。常用的是GNU的c语言编译器 gcc(编译 C 程序), g++(编译 C ++程序)。 关于 gcc / g++ 关于 makefile >>>> 用于简化编译过程 这里有一片入门文章 Linux下C语言编程基础知识,可以先看一下 3) 调试程序的常用工具:gdb. 关于 gdb Get help获得帮助: 关于 Linux 的文档是非常丰富的。最快捷,方便,全面的资料就在你的机器里,不要浪费。 在命令行上输入shell命令 man 或者 info: $man gcc >>>> 这个命令可以获得GNU 的C语言编译器的文档。当然,他们是英文的。看 Basic steps 基本步骤: 1. 输入源代码 2. 编译,链接,运行 3. 调试程序 我们从最基本的 hello world 程序开始,实际操作一下: 1. 输入源代码 引用 $ emacs hello.c >>>> 进入emacs 编辑器环境 #include >>> 如果你看不懂这个函数,就去好好的看c语言的书 int main() { printf(“Hello World.\n”); >>>> Emacs环境下,按下 Tab 键,有自动缩进功能 exit(0); } 完成输入后,按住CTRL 键,按下 x, 再按下 c , 最后松开 CTRL。 >>>> 程序保留并退出emacs 环境。 2. 编译,链接,运行 引用 $ gcc –o hello hello.c $ ./hello >>>> ./ 指明了所执行程序的路径 Hello World. $ 一个linux平台上的c程序开发已经完成咯 3. 调试 如果要使用 gdb 调试程序,那么在上一步编译的时候,记得加上 –g 选项 引用 $ gcc –g –o hello hello.c $ gdb hello >>>> 进入 gdb 调试环境   4. CVS版本控制软件 —— 协同工作和保留版本的工具 关于 CVS这里向大家介绍一下在Linux/UNIX 的机器上,进行 C/C++ 编程的一些入门级知识。 · 所需具备的背景知识 · 开发所需的基本环境 · 获得帮助的途径 · 通过一个实例了解基本步骤 Prerequisite 先决条件: 在Linux上编写 C 程序,至少要熟悉以下两方面的基础知识: 1. C语言的编程基础,至少要知道一些基本的语法,控制流程等编程常识。 对常用的标准 C 函数库有常识性的了解。 2. 对Linux/UNIX 的操作有常识性的了解,掌握常用的shell 命令,如 ls, cat, cp, mkdir …etc. Environment 所需环境: 1. Linux/ Unix 的操作系统,也可以使用windows下的cygwin。 我们这里讨论的都是通过shell命令行进行操作的。那如果进入了图形界面的Linux 怎么办呢?只要打开一个终端命令,就和命令行环境完全一样了(打开开始菜单可以找到终端命令)。 2. 必备的开发工具: 1) 输入程序需要一个编辑器。常用的有 vi , emacs. 在命令行上输入 vi, emacs, … 就可进入编辑环境 关于 vi 关于 EMACS 2) C语言的编译器。常用的是GNU的c语言编译器 gcc(编译 C 程序), g++(编译 C ++程序)。 关于 gcc / g++ 关于 makefile >>>> 用于简化编译过程 这里有一片入门文章 Linux下C语言编程基础知识,可以先看一下 3) 调试程序的常用工具:gdb. 关于 gdb Get help获得帮助: 关于 Linux 的文档是非常丰富的。最快捷,方便,全面的资料就在你的机器里,不要浪费。 在命令行上输入shell命令 man 或者 info: $man gcc >>>> 这个命令可以获得GNU 的C语言编译器的文档。当然,他们是英文的。 关于 man 关于 info 网络上的资源也很多,多得以至于不知道什么才是自己最需要的。 关于如何获得有价值的信息 看一下 loveunix 上的相关资源 >>>> 无双补充的一些Linux下入门编程资料 >>>>   Basic steps 基本步骤: 1. 输入源代码 2. 编译,链接,运行 3. 调试程序 我们从最基本的 hello world 程序开始,实际操作一下: 1. 输入源代码 引用 $ emacs hello.c >>>> 进入emacs 编辑器环境 #include >>> 如果你看不懂这个函数,就去好好的看c语言的书 int main() { printf(“Hello World.\n”); >>>> Emacs环境下,按下 Tab 键,有自动缩进功能 exit(0); } 完成输入后,按住CTRL 键,按下 x, 再按下 c , 最后松开 CTRL。 >>>> 程序保留并退出emacs 环境。 2. 编译,链接,运行 引用 $ gcc –o hello hello.c $ ./hello >>>> ./ 指明了所执行程序的路径 Hello World. $ 一个linux平台上的c程序开发已经完成咯 3. 调试 如果要使用 gdb 调试程序,那么在上一步编译的时候,记得加上 –g 选项 引用 $ gcc –g –o hello hello.c $ gdb hello >>>> 进入 gdb 调试环境   4. CVS版本控制软件 —— 协同工作和保留版本的工具 关于 CVS 一,VI:常用的源代码编辑命令。 vi hello.c 在当前目录下生成hello.c,并进入命令模式 在命令模式下,不能输入,可以完成删除,复制,粘贴等操作。 1)按i 或a或o进入插入模式,可以键入字符,一般用i; a与o稍有不同。 2)键dd删除光标所在行 3)数字(n)+dd删除光标开始向下n行 4)数字(n)+yy复制光标开始向下n行 5) p 粘贴到光标处 6)u 撤消上次操作 在插入模式下,按ESC进入底行模式,主要进行存盘和退出之类的操作 1) :wq 最常用,保存并退出 2):w [filename] 保存或另存 3):q! 强退出VI 二 gcc常见用法: 1)gcc -E hello.c -o hello.i   //预处理 2)gcc -S hello.i -o hello.s  //编译成汇编语言文件 3)gcc -c hello.s -o hello.o  //汇编成目标代码 4)gcc -c hello.c -o hello.o  //直接生成目标代码文件<最常用> 5)gcc  hello.c -o hello       //直接生成可执行文件 6)gcc hello1.o hello2.o -o hello  //链接生成可执行文件<最常用> 常见选项 : 1) -g  生成GDB调试信息,用GDB工具此项必有 2) -I dir 编译过程中包括指定目录下的头文件 3) -L dir 可能需要到dir处链接库文件 4) -llibrary 链接动态libaray库。通常不带库名的前三个字母(lib),如 -lhello表示链接libhello.so动态库 5)-static 链接静态库 6) -Wall 允许所有有用的警告 7) -O (-O2或-O3)进行代码优化(分三级) ,一般不用在调试阶段 三 Gdb调试常见用法 gdb hello 进入调试 。编译时一定带-g选项。 常用操作: 1) l (list) 查看源代码 2) b(breakpoint) n :在第n 行设置断点 3) r (run) 运行 4) n(next) 单步执行,不进入函数内部,相当于VC下F10 5) s(step) 单步执行,进入函数内部,相当于F11 6) c(contiue) 继续执行,从当前运行处到下一个断点或者程序结束。 7) p var :查看变量var的当前值 8)finish 运行到程序结束 跟断点相关的有用命令: 1)info b 查看所有设置的断点的相关信息 2) b function 在function函数所在行设置断点 3) b 行数或函数名 if 表达式     满足表达式时运行中断 <感觉比较重要> 4) delete [断点号] 删除 5)disable [断点号] 禁用 6)enable[断点号]激活 若不带断点号,则命令对所有断点号用效,断点号可用info b得到。 7)ignore [断点号] N  忽略断点N次,对循环一类的程序有用。 查看运行过程中变量的有用命令: print 表达式或变量 display 表达式 ,听说能自动显示对应表达式内容 (还没试过) 修改变量命令: set var=value 设置变量值。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服