基于Linux下的C编程基础

一、Linux下C语言编程环境

编辑器、编译链接器、调试器及 项目管理工具。

1、编辑器

  • vi
  • emacs

2、编译链接器

  • gcc

3、调试器

  • gdb

4、项目管理器

  • make

二、编辑器

  • 行编辑器(Ed、Ex)
  • 全屏幕编辑器(vi、emacs)

三、vi编辑器

vi 是 Linux 系统的第一个全屏幕交互式编辑程序.
vi 有 3 种模式,分别为命令行模式、插入模式及命令行模式。
(1)命令行模式。 用户在用 vi 编辑文件时,初进入的为一般模式。在该模式中用户可以通过上下移动光标进行“删除字符” 或“整行删除”等操作,也可以进行“复制”、“粘贴”等操作,但无法编辑文字。
(2)插入模式。 只有在该模式下,用户才能进行文字编辑输入,用户按[ESC]可键回到命令行模式。
(3)底行模式。 在该模式下,光标位于屏幕的底行。用户可以进行文件保存或退出操作,也可以设置编辑环境,如寻找字 符串、列出行号等。

四、emacs编辑器

  • emacs 只有一种模式,也就是编辑模式,而且它的命令全靠功能键完成。
  • emacs 却还使用一个不同 vi 的“模式”,它的“模式”是指各种辅助环境。比如,当编辑普通文本时,使用的是“文本模式(Text Mode)”,而当写程序时,使用的则是如“c 模式”、“shell 模式”等。

五、gcc编译器

在这里插入图片描述
gcc编译过程:
在这里插入图片描述
E S C o

六、函数库

要将一些常用的公共函数编译并集成到二进制文件(Linux 的 ELF 格式文件),以便其他程序可重 复地使用该文件中的函数,此时将这种文件叫做函数库,使用函数库不仅能够节省很多内存和存储器的空间资 源,而且更重要的是大大降低开发难度和开销,提高开发效率并增强程序的结构性。

  • 静态库
    静态库是一系列的目标文件(.o 文件)的归档文件(文件名格式为 libname.a),如果在编译某个程序时链接静态库,则链接器将会搜索静态库,从中提取出它所需要的目标 文件并直接复制到该程序的可执行二进制文件(ELF 格式文件)之中;
  • 动态库
    动态库在程序编译时并不会被链接到目标代码中,而是在程序运行时才被载入。

七、gdb调试器

gdb 进行调试的是可执行文件,而不是如“.c”的源代码。

猜你喜欢

转载自blog.csdn.net/weixin_44366125/article/details/105958286