分享
 
 
 

Linux 程序设计入门

王朝system·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

这里向大家介绍一下在Linux/UNIX 的机器上,进行 C/C++ 编程的一些入门级知识。

· 所需具备的背景知识

· 开发所需的基本环境

· 获得帮助的途径

· 通过一个实例了解基本步骤

· 各种工具使用和系统学习的资料推荐

本文只是做一个概述,对一些最基本的东西进行些汇总,编程涉及到很多的工具,需要大家自己由浅入深的学习。

首发于 www.loveunix.net 2004-04-07

Modified 2004-10-14 by Carol

Prerequisite 先决条件:

在Linux上编写 C 程序,至少要熟悉以下两方面的基础知识:

1. C语言的编程基础,至少要知道一些基本的语法,控制流程等编程常识。

对常用的标准 C 函数库有常识性的了解。

2. 对Linux/UNIX 的操作有常识性的了解,掌握常用的shell 命令,如 ls, cat, cp, mkdir …etc.

Environment 所需环境:

1. Linux/ Unix 的操作系统,也可以使用windows下的cygwin软件来模拟Linux,但是不能保证实现所有的功能。也可以考虑在Windows上使用vmware安装一个Linux环境。

关于 cygwin 和 vmware 我们将在后面介绍。

我们这里讨论的都是通过shell命令行进行操作的。那如果进入了图形界面的Linux 怎么办呢?只要打开一个终端程序,就和命令行环境完全一样了(打开开始菜单可以找到终端命令)。

2. 必备的开发工具:

1) 输入程序需要一个编辑器。常用的有 vi , emacs. 在命令行上输入 vi, emacs, … 就可以进入编辑环境了。

要了解详细的使用,推荐看无双写的 vi 教程,我平时使用的是emacs,所以也整理了一些 关于 EMACS 的参考资料.

2) C语言的编译器。常用的是GNU的c语言编译器 gcc(编译 C 程序), g++(编译 C++程序)。

具体学习 gcc / g++ 的使用。

编写大型程序的时候,手动输入一条条的gcc命令非常麻烦,这时候可以使用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 <stdio.h> // 如果你看不懂这个函数,就去好好的看c语言的书

int main()

{

printf(“Hello World.n”); // Emacs环境下,按下 Tab 键,有自动缩进功能

exit(0);

}

完成输入后,按住CTRL 键,按下 x, 再按下 c , 最后松开 CTRL (通常书上表达成 Ctrl-x Ctrl-c 或者 C-x, C-c)。 程序保留并退出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版本控制软件 —— 协同工作和保留版本的工具

学习Linux程序编程的好书推荐:

Linux 程序设计

UNIX 环境高级编程,很有名,俗称 APUE

Advanced Linux Programming

the Art of Unix Programming

以上书籍网上都有下载,建议选择适合自己的买回来系统学习。

网上也有不少的资料整理

开发工具的学习:

cygwin WinCVS简明操作指南 by 陈先波

vmware 在VMware中安装Red Hat Linux 9的教程 by unknown

vi vim初级教程 by 无双

emacs emacs 使用循序渐进 by Carol

gcc

makefile 跟我一起写 Makefile by 陈皓

gdb

推荐学习站点:

[url=http://www.loveunix.net]loveunix技术论坛 程序设计版资料

chinaunix 精华

linuxsir

linuxforum

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有