本节来源
本节来源于我进入公司以来整理的第一篇文档中的 Linux下C语言编程入门-0前言
部分。而其中的 Linux下C语言编程入门-20后序
部分也提到过会将APUE这本书整理,正如现在所做,其具体内容应该可以在网上搜索到。
本节所在的文档,本来是对一本 《Linux操作系统C语言编程入门》
的整理。那本书看起来也像是某个人的学习经验的总结,或者是某本外文书的简单翻译。我也没有找到是那个出版社那个作者写得。不过包含的内容也确实是如其题目。
本节内容
看过本节,应该能够大体了解Linux下面的C编程是怎么回事了。本节的最简实践部分,可以给您提供一个尝试在Linux下运行您的C程序的机会。
本节只是对前面提到的来源文档中的前言的摘抄,但是那个文档所包含的主要内容如下:
1、关于Makefile
2、关于进程和用户信息
3、关于进程的创建和执行
4、关于文件操作
5、关于管道操作
6、关于重定向操作
7、关于时间的操作
8、关于计时器
9、信号简介
10、关于信号操作
11、关于信号量
12、关于进程之间的通信
13、关于线程
14、关于网络编程(1)TCP
15、关于网络编程(2)UDP
16、关于高级套接字函数
17、关于服务器模型
18、关于多路复用I/O
19、其他相关
这些内容不会在这里体现,但是通过这我们可以大致了解Linux下面C语言编程会涉及到哪些内容。
最简实践
学会在Linux下面编程, gcc
和 gdb
两个工具是必须会用的。 gcc
用来编译您的源程序, gdb
用来调试。
1、使用 gcc
编译程序
编辑源程序内容
/*test.c*/
#include
int main(int argc, char *argv[])
{
printf(“hello!\n”);
return 0;
}
编译源代码
$gcc test.c -o test
这样会把你刚才编写的程序编译链接成一个可执行文件 test
。
运行程序
$./test
这样就会看到屏幕上打印的 hello!
了。
2、使用 gdb
调试程序
gdb
是调试程序需要用到的工具。在初步了解 gcc
之后,调试程序过程如下:
- 假设源文件名字:
test.c
。 - 编译:
$gcc -g test.c -o test
。 注意:因为要使用gdb
调试工具所以必须加上-g
选项打开调试开关,结果生成可执行文件test
,可以用$./test
运行。 - 打开调试器:
$gdb test
。 这样会进入与gdb
交互的界面,可以开始调试了(或者$gdb
然后在输入(gdb)file test
)。 - 查看源代码:
(gdb)list
。 按回车可以重复上次的命令,list
会自动增加偏移量,如果想查看0行就list 0
。 - 运行程序:
(gdb)run
。(显示运行结果) - 在第24行设置断点:
break 24
。 运行run
将在断点处停止。 - 在断点处后继续运行:
next
。在当前函数单步执行程序。 - 添加
s[size]
作为观察变量:watch s[size]
。 - 退出:
q
。
网友评论