- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
下载
下载
第3 0章 C和C+ + 编程
本章内容:
• C语言的背景
• C 的编程:基本概念
• 创建、编译和执行第一个程序
• C语言的元素
• 项目管理工具
• C++语言的元素
• 利用C + +编程:基本概念
• C++ 的类
• GNU C/C++编译器的命令行选项
• GNU egcs编译系统的新特征
• 辅助资料
UNIX shell 支持的命令范围很广,这些命令可以通过脚本的形式组合在可重用的程序中。
利用s h e l l编写的脚本(以及像g a w k和P e r l 一类的实用程序)是许多U N I X用户定制其计算环境所需
的所有程序。
然而,脚本语言存在一些缺点。首先,用户输入的脚本命令只有当执行脚本后才被读出和
执行。解释性语言虽然灵活而且易于使用,但它的效率却较低,因为这些命令在每次执行脚本
时都必须重新解释。解释性语言也不适合于直接操作计算机的内存和 I / O设备,所以处理脚本
的程序(例如各种UNIX shell awk实用程序,以及P e r l解释程序等)其本身如同U N I X 的内核一样,
都是用C和C+ + 编写而成的。
许多用户感到学习一种脚本的、解释性的语言相当容易,因为通常一次可以执行一条命令,
并能够立即看到结果。学习 C或C+ + 语言是较复杂并且也是较困难的,因为你必须学会考虑机
器资源以及在计算机内完成动作的方法,而不是面向用户的命令。
本章将向你介绍C和C+ + 的基本概念并说明设计一些简单程序的方法。即使你不打算学习另
一种语言来扩充自己的编程能力,你也可以从本章中学习很多知识,例如内核如何建立、U N I X
的一些特性为什么以那样的方式进行处理等。在本章最后“辅助资料”一节中将列出辅助资料。
30.1 C语言的背景
C是一种与U N I X 紧密相关的程序设计语言。从 7 0年代以来,操作系统中的大部分内容及
其应用程序都是由C编写的。由于C语言不直接依赖于任何特定的硬件体系结构,所以 U N I X是
最早的可移植的操作系统之一,也就是说,构成 U N I X 的大多数代码不知道也无需知道它们所
运行在的计算机类型。与具体机器相关的特性只与 U N I X 内核中的少数模块相关,这使得代码
在移植到不同的硬件体系结构上时,修改起来十分容易。
C是由Dennis Ritchie首先设计的,它最初用于DEC PDP-11 计算机的U N I X 。C语言由M a r t i n
R i c h a r d 的B C P L演变而来,它早期的一个形式是B语言,B语言是由Ken Thompson 为DEC PDP-
第 3 0章 C和C + +编程 5 5 9
下载
7所编写的。第一本关于 C 的书籍是由Brian Kernighan和 Dennis Ritchie编写的《C语言程序设
计》(The C Programming Language) ,该书于1 9 7 8年出版。
在1 9 8 3年,美国国家标准学会 ( A N S I )成立了一今委员会并对 C 的定义进行了标准化,所得
到的标准称为ANSI C 。ANSI C 是语法和一批核心库的公认标准,它的语法与最初被称为 K &
R (K e r n i g h a n和R i t e h i e)的C语言稍有不同。在本章中将主要介绍ANSI C 。
30.2 C 的编程:基本概念
C是一种编译性的第三代过程型语言。“编译性的”的含义是:在执行C程序之前,将对 C
的源代码进行分析、解释,然后转换为机器指令。这些步骤是利用 C编译器,并根据C程序的
复杂性,通过m a k e实用程序来实现的。在程序被编译后,该程序在不必重新编译的情况下可
以被反复执行。
“第三代过程型语言”指的是把程序中所使用的数据与对数据所执行的操作明显区别开来的计
算机语言。用第三代语言编写的程序采取一系列显式的处理步骤(或过程),这种方式通过显式地
引用内存中的数据存储单元来操纵数据结构的内容,并通过操纵计算机的硬件来响应硬件中断。
30.2.1 C程序中的
您可能关注的文档
最近下载
- 钢筋工“晨会”“班前会”讲话内容.docx VIP
- 声学基础许肖梅 著课后习题答案 科学出版社资料资料资料.pdf VIP
- 如何选择数码相机.pptx VIP
- 新苏教版科学六年级上实验报告单.docx VIP
- 新苏教版科学六年级上实验报告单.pdf VIP
- 职业技术学院畜禽生产技术专业人才培养方案.pdf VIP
- 省级工法-斜屋面盘扣架顶部支撑施工工法.pdf VIP
- 2024-2025学年北京七年级语文上学期期中试题分类汇编:作文-.pdf VIP
- TZGCMCA 008.1-2024 建筑信息模型 数据资产价值评估规范 第1部分:公路工程.pdf VIP
- 红色文化融入中学美育课程的教学模式研究.docx VIP
文档评论(0)