免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1116 | 回复: 0
打印 上一主题 下一主题

《Linux程序设计》学习笔记01——入门 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-06-08 21:05 |只看该作者 |倒序浏览


欢迎转载,请保留作者信息
bill@华中科技大学
http://billstone.cublog.cn

什么是Linux
Linux是一个类UNIX内核的可以自由发布的实现版本,是一个操作系统的底层核心。几乎所有为UNIX编写的程序都可以在Linux上编译运行。
Linux是由赫尔辛基大学的Linux Torvalds开发的,期间得到了因特网上广大UNIX程序员的帮助。它最初只是受Andy Tanenbaum教授的Minix(一个小型类UNIX系统)启发而开发的个人爱好的程序,但后来逐步发展成为一个拥有自己版权的完整系统。其目的是,保证Linux除包含自由发布的代码外,不会集成任何私有代码。

GNU项目和自由软件基金会
Linux社团支持自由软件的概念,即软件本身不应受限,它们应该遵守GNU通用公共许可证(GPL)。虽然获得软件可能要支付一定的费用,但此后就可以随意使用,并且它们通常是以源代码的形式发布的。
在GPL规则限制下,所有基于这种概念开发的软件都应遵循GPL。大家可以在
http://www.gnu.org
上找到更多关于自由软件的概念。

Linux程序
Linux应用程序表现为两种特殊类型的文件:可执行文件和脚本文件。可执行文件是计算机可以直接运行的程序,它们相当于Windows中的exe文件。脚本文件是一组指令的集合,这些指令将由另一个程序(解释器,比如shell或者perl)来执行,它们相当于Windows中的bat文件、cmd文件或解释执行的BASIC程序。
与Windows相比,Linux程序并不要求可执行程序或脚本具有特殊的文件名或扩展名。当登录Linux系统时,我们与一个shell程序(通常是bash)进行交互,它像Windows中的命令提示窗口一样运行程序。在当前环境下,必定有一组环境变量与之匹配,其中PATH变量指明了当前可以自动搜索的目录:当需要执行的程序在PATH指定的目录中时,你将不需指明待执行程序的全路径(除非有同名程序存在);否则必须指定需要执行程序的路径(相对路径或者绝对路径)。
如果你还是Linux环境下的初学者,一定要注意Linux使用正斜线(/)分割文件名里的目录名,而不是像Windows那样使用反斜线(\)。
建议:如果你刚刚接触Linux,请先学会使用Linux再来学习如何在Linux环境下编程。

C语言编译器
这里我们使用GNU C编译器,简称为gcc。因为它随Linux的发行版一起提供,并且它支持ANSI C的标准语法。在
http://www.gnu.org
上可以获取gcc软件包。
建议:如果你是初学C语言,请编写经典的HelloWorld程序来开始你的学习之旅。

开发系统导引
对Linux开发人员来说,了解软件工具和开发资源在系统中存放的位置是很重要的。
应用程序 应用程序通常存放在系统为之保留的特定目录中。系统为正常使用提供的程序,包括用于程序开发的工具,都可以在目录/usr/bin中找到;系统管理员为某个特定的主机或本地网络添加的程序通常可在目录/usr/local/bin或/opt中找到。
建议:在/usr/local目录结构下编译、运行自己的程序,并访问必须的文件。
头文件 对C语言来说,头文件几乎总是在/usr/include目录及其子目录下。那些依赖于特定Linux版本的头文件通常可以在目录/usr/include/sys和/usr/include/linux中找到。
在调用C语言编译器时,我们可以使用-I标志来包含保存在子目录或非标准位置中的头文件,比如:$ gcc –I/usr/openwin/include fred.c。它指示编译器不仅在标准位置,也在/usr/openwin/include目录中查找fred.c中包含的头文件。
提示:可以使用grep命令来搜索包含某些特定定义和函数原型的头文件。
库文件 库是一组预先编译好的函数的集合,这些函数都是按照可以重用的原则编写的。标准库文件一般存储在/lib和/usr/lib目录中。
库文件的名字总是以lib开头,随后的部分指明这是什么库(比如,libm就代表了数学库)。文件名的最后部分以.开始,然后给出库文件的类型:.a代表传统的静态函数库;.so代表共享函数库。
提示:如何编写及使用两种函数库可以参看《精通UNIX下C语言编程及项目实践》的
学习笔记1



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/47687/showart_1959033.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP