UNIX环境C语言编程

UNIX环境C语言编程

ID:39469450

大小:123.50 KB

页数:39页

时间:2019-07-04

UNIX环境C语言编程_第1页
UNIX环境C语言编程_第2页
UNIX环境C语言编程_第3页
UNIX环境C语言编程_第4页
UNIX环境C语言编程_第5页
资源描述:

《UNIX环境C语言编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第一章概述1.1UNIX的版本   UNIX操作系统是贝尔实验室于六十年代末用C语言研制开发的。经过几十年的发展,已经成为流行于从大型机、小型机到工作站甚至微机等多种平台的操作系统。UNIX的成功同时也推动了C语言的普及。本教材的目的是讲解UNIX系统下的C程序设计,使C程序员快速掌握UNIX系统下的编程开发。作者在进行UNIX编程开发的实践过程中,深感实例的重要性,一个简短的C语言实例往往胜过长篇累牍的文字说明,当然了,文字说明也是必不可少的。本教材将本着实例优先的原则,使您能够对UNIX编程开发快速入门。    U

2、NIX的版本不统一是出了名的,从UNIX的发展历史来看,主要有两大流派:AT&T的UNIX系统V版本和加州大学伯克利分校的BSD版本,在此基础上,各家UNIX厂商均开发了各自的UNIX操作系统。如:工作站厂商中有HP的hpux、SUN的solaris、SGI的irix、IBM的AIX等,小型机有VAX上的Ultrix,微机上有SCOUNIX、微软的Xenix以及随着Internet而风靡全球的Linux等。由于WindowsNT的异军突起,对UNIX的市场形成巨大的威胁,各大UNIX厂商不得不联合起来,在工作站市场上,

3、统一以系统V版作为标准,加入BSD版本中的一些优点,支持统一的CDE(CommonDesktopEnvironment)窗口环境,以与WindowsNT进行对抗。1.2UNIX编程环境   UNIX操作系统通过Shell程序实现系统与用户的交互,在Shell提示符下,用户键入UNIX命令,即可得到操作系统的输出结果。BSD系统的常用Shell是CShell,缺省提示符是"%",系统V的常用Shell是BourneShell(现在多为KornShell),缺省提示符是"$",有关Shell的编程,我们在后面的章节中进行介

4、绍。  UNIX上的标准编译器是cc。在Shell提示符下(以CShell为例)键入下列命令:$cc-ohellohello.c即将C文件hello.c编译为可执行文件hello。在编译多个文件生成一个可执行文件时,UNIX提供命令make。用户需要针对多个C文件,按照一定的格式编写一个叫做Makefile的文本文件。下面是SGI上的一个Makefile的例子: CC=ccCFLAGS=$(DEBUG)-cckr-I$(INC)/X11-DSYSVDEBUG=-gINC=/usr/includeLDFLAGS=-lXe

5、xt-lXm-lXt-lX11-lPW-lcOBJS=initx.owindowx.oTGTS=showxwinall::$(TGTS)showxwin:$(OBJS)$(CC)-o$@$(OBJS)$(CFLAGS)$(LDFLAGS)大写字母的字串是一些宏,CC是编译器的名字、CFLAGS定义cc的编译开关、DEBUG是调试宏、INC是头文件所在目录、LDFLAGS定义了编译连接库、OBJ定义了目标文件名、TGTS定义了可执行文件名。在Shell提示符下直接键入:$make即可将Makefile中指定的所有C文件进

6、行编译并生成可执行文件。1.3UNIX编程中的基本概念   在讨论UNIX编程开发前,首先需要阐明系统调用和库函数这两个概念。一个系统调用指一个需要操作系统代表用户程序来执行某些任务的请求。例如:read是一个系统调用,它请求操作系统存储在一个磁盘设备(或其他设备)上的数据去填充一个缓冲区。如果任何人在他们想执行任务的时候都能随便访问设备,那么后果将是不可预测的。所以,这种服务必须请求操作系统来做,它(经常是透明地)记录所有处理每个设备的请求。而一个库函数,并不经常需要操作系统来执行其任务。例如数学库函数中的sin()

7、,cos()等,这些计算只需要简单地对一个有限序列求和,所以并不需要操作系统干预。在UNIX操作系统中,有一个常用的命令man,可用来查阅命令、库函数和系统调用等的具体使用方法。传统Unix联机帮助手册的分节法为:1用户级命令(User-levelcommands)2系统调用(Systemcalls)3库函数(Libraryfunctions)4设备及驱动程序(Devicesanddevicedrivers)5文件格式(Fileformats)6游戏(Games)7杂项(Variousmiscellaneousstuf

8、f-macropackagesetc.)8系统维护及操作命令(Systemmaintenanceandoperationcommands)第二章标准输入/输出库2.1概述本章介绍UNIX的标准输入/输出库,UNIX提供一些库函数完成高级输入/输出,为程序员提供了三方面的主要功能:·自动开辟缓冲区。即使一次读或写的数据只有几个字节,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。