红联Linux门户
Linux帮助

Linux 下 C 编程从零开始

发布时间:2005-05-10 00:11:21来源:红联作者:thej
这里向大家介绍一下在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
文章评论

共有 134 条评论

  1. gonglx 于 2015-11-14 21:27:20发表:

    真的很有用顶顶

  2. geekf 于 2015-11-09 17:19:07发表:

    (e:e2s

  3. gudeng886 于 2013-07-30 17:16:53发表:

    手(6)m:b

  4. zzwhjj 于 2013-07-30 13:40:19发表:

    书籍在哪可以下载

  5. chencong 于 2012-12-29 15:11:08发表:

    好贴,顶一下!!!

  6. guoyang0601 于 2010-12-27 21:07:02发表:

    。。。。。。。。。。。。。。。。。

  7. zfj0910 于 2010-11-24 16:42:26发表:

    看不到啊

  8. bingfengshuiye 于 2010-11-18 10:17:30发表:

    顶楼主

  9. sclzwj 于 2010-10-27 12:22:14发表:

    大家都顶了,我怎么能不顶呢。

  10. tjmzgn 于 2010-10-26 14:27:49发表:

    就是从这个时候过来的!

  11. 棉袄加短裤 于 2010-09-25 20:41:32发表:

    [code][/code]

  12. 楼兰后主 于 2010-05-31 11:02:52发表:

    收了

  13. haofree 于 2010-05-16 11:10:55发表:

    不错

  14. flyaway 于 2010-05-12 16:20:53发表:

    谢谢楼主了!

  15. 太阳之光 于 2010-05-10 12:03:00发表:

    有一一定的了解了???谢谢分享!

  16. wolf_d 于 2010-04-23 15:45:32发表:

    收到,谢谢

  17. 静静飞舞 于 2010-04-22 13:42:04发表:

    新手可以看看哦

  18. 835304205 于 2010-04-22 09:53:57发表:

    谢谢楼主

  19. ericq2010 于 2010-04-22 09:45:08发表:

    cool................

  20. sx-ljm 于 2010-04-22 07:13:34发表:

    书的下载地址在哪里?

  21. tupac 于 2010-04-21 23:38:55发表:

    顶

  22. bsszr 于 2010-03-13 22:09:42发表:

    赞一个!

  23. jackseaman 于 2010-03-13 20:24:13发表:

    good thinkings.

  24. beautifularea 于 2010-03-12 23:23:12发表:

    有帮助

  25. gudujianxfh 于 2010-03-08 14:28:17发表:

    支持!!!

  26. qiuyengwo 于 2010-03-05 00:32:17发表:

    还以为是个电子书 谢谢LZ

  27. fanyq 于 2010-02-27 21:28:25发表:

    挺基础的,谢谢lz

  28. xiaoku8891 于 2010-02-26 17:43:54发表:

    帮顶下。。支持

  29. ftp0000 于 2010-01-28 14:21:02发表:

    感谢lz分享

  30. leiyubingxin 于 2009-12-24 19:12:49发表:

    小顶一下

  31. child7 于 2009-12-20 18:32:30发表:

    学习,收藏下

  32. uchiha 于 2009-12-19 17:24:36发表:

    顶顶

  33. cshaoyan 于 2009-12-03 08:47:16发表:

    这个确实够初级,谢谢

  34. Reachie 于 2009-12-02 15:45:26发表:

    up

  35. erathia 于 2009-12-01 14:43:55发表:

    UP

  36. lly20021228 于 2009-11-30 23:54:47发表:

    辛苦啦

  37. huwei025 于 2009-11-26 21:48:49发表:

    谢谢分享谢谢分享

  38. 550804556 于 2009-11-25 15:02:09发表:

    顶顶顶

  39. 550804556 于 2009-11-25 15:02:03发表:

    顶顶顶顶

  40. 550804556 于 2009-11-25 15:01:59发表:

    顶顶顶顶