版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C+ 语言程序设计C+ 程序设计语言特点lC+是在C语言基础上开发的一种集面向对象编程,传统的过程化编程和通用编程于一体的编程语言。lC+模版的特性提供了另一种全新的编程方法通用编程。它与OOP的编程目标相同就是使重用代码和抽象概念更简单。不过OOP强调的编程的数据方面,而通用编程强调的算法。lC+可以开发系统软件,应用软件和游戏等等,它的运行速度只比汇编和C慢一点。C+ 发展史 1972年AT&T公司为UNIX系统开发发明了C 1982年AT&T公司的STRAUSRUP为了系统和工程的设计改进了C语言在诞生的初期我们也把它叫做带类的C。l1983年正式取名为C+l从1989年
2、开始C+语言的标准化工作l于1994年制定了ANSI C+标准草案l于1998年11月被国际标准化组织(ISO)批准为国际标准,成为目前的C+计算机语言的分类 1 机器语言:以0,1为代表的二进制语言,机器自身能识别的语言。(打孔纸带) 2汇编语言:用助记符号表示的机器语言(低级语言:致力于特定的计算机处理器) 3 高级语言:C+,JAVA,C#等。(致力于解决问题)不针对特定的硬件由一种称为编译器的特殊程序将高级语言翻译成了特定的计算机内部语言。Fortran语言第一个计算机高级语言由编译器编译成机器码.C语言(半)高级语言,语法简洁、运行效率Simula第一个面向对象程序设计语言C+有C语
3、言血源的、支持面向对象程序设计语言目前流行的高级语言比较1C+:它的功能很强大适合做系统底层的操作。比如写操作系统。开发游戏。但是对比java 来说安全性不高。因为C+有指针能直接操作内存,但是速度绝对快。 2JAVA:它其实是网络编程语言针对WEB应用程序,在跨平台和安全性方面非常完善。 运行速度比较慢 3C#:在 .NET Framework 上运行的应用程序设计的。C# 简单、功能强大、类型安全,而且是面向对象的。面向过程与面向对象l一般计算机都要处理两个概念-数据和算法。数据是程序使用和处理的信息,而算法是程序使用的方法。l面向过程(Procedural)强调编程的算法方面。-POP编
4、程思想(结构化编程函数)面向过程适用于规模较小的程序开发。l面向对象(Object)则强调的是数据。-OOP编程思想(Class类,准确描述程序要处理的东西)面向对象编程并不仅仅是将数据和方法合并为类,更重要创建了可以重用的代码。面向过程的编程示例面向过程程序设计程序程序=数据结构数据结构+算法算法+程序设计语言程序设计语言+语言环境语言环境面向对象程序设计l程序程序=对象对象+对象对象+对象对象l对象对象=算法算法+数据结构数据结构+程序设计语言程序设计语言+语言环境语言环境面向对象的编程示例C+ 源码分析l#include lusing namespace std;lvoid main()
5、llchar name100;lint iAge;lcout请您输入姓名:name;lcout请您输入年龄:iAge;lcout您的名字叫nameendl;l cout年龄是iAgeendl;ll#include 是预编译命令C+和C一样也使用预处理器,该程序在进行主编译前对源文件进行处理,它会在编译时自动执行。l该编译指令让预处理器将要使用的文件内容添加到程序中。#include lnamespacenamespace名字空间域是随标准C+而引入的。它相当于一个更加灵活的文件域(全局域l在域外使用域内的成员时,需加上名字空间名作为前缀,后面加上域操作符“:” 。l使用using指示符可以一次
6、性地使名字空间中所有成员都可以直接被使用l标准C+库中的所有组件都是在一个被称为std的名字空间中声明和定义的。在采用标准C+的平台上使用标准C+库中的组件,只要写一个using指示符: using namespace std;就可以直接使就可以直接使用标准用标准C+库中的所有成员。库中的所有成员。l 注意:注意:如果使用了名空间std,则在使用#include编译预处理命令包含头文件时,必须去掉头文件的扩展名.h,否则会出错。lmain()函数函数:l程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。l必须有且只能有一个主函数main()lC+C+语言的输入输出:语言的
7、输入输出:lcout“cout“输出内容输出内容”“cin“输入内容输入内容”; l/ cin为标准输入流对象(默认从键盘输入)l控制符控制符endlendl:是C+的一个特殊符号,表示一个重要的概念就是:重起一行。将屏幕的光标移到下一行的开头,它是在iostream里定义的,且位于std名字空间(老式的是n)如果要求按八进制或十六进制输入输出,在如果要求按八进制或十六进制输入输出,在cincin或或coutcout中中必须指明相应的数据形式,必须指明相应的数据形式,octoct为八进制,为八进制,hexhex为十六进为十六进制,制,decdec为十进制。为十进制。进制控制只适用于整数进制控制
8、只适用于整数。例如:例如:int i, j, k, l;cout Input i(oct), j(hex), k(hex), l(dec): oct i;/输入为八进制数输入为八进制数cin hex j;/输入为十六进制数输入为十六进制数cin k;/输入仍为十六进制数输入仍为十六进制数cin dec l;/输入为十进制数输入为十进制数cout hex: i= hex i endl;cout dec: j= dec jt;cout k= k endl;cout oct: l= oct l;cout dec endl; /恢复十进制输出状态恢复十进制输出状态 输入输出的格式控制(1)(1)各种进
9、制数据的输入输出各种进制数据的输入输出l执行时输出提示:lInput i(oct), j(hex), k(hex), l(dec):l此时从键盘输入:l032 0 x3f 0 xa0 17 l则输出结果为:lhex:i=1aldec:j=63k=160loct:l=21l注意:必须在cin中指明数制,否则从键盘输入时,不认八进制和十六进制数开头的0和0 x标志。指明后可省略0和0 x标志。l注意:在cin或cout中指明数制后,该数制将一直有效,直到重新指明用其他数制。l特别注意:输入数据的格式、个数必须与cin中的变量一一对应,否则不仅使输入数据错误,而且影响后面其他数据的正确输入。 输入输
10、出的格式控制为了使数据间隔开,还可以用为了使数据间隔开,还可以用C+C+提供的函数提供的函数setw() setw() 指定指定输出数据项的宽度。例如:输出数据项的宽度。例如:int i=2, j=3;float x=2.6, y=1.8; cout setw(6) i setw(10) j endl;cout setw(10) i*j endl;cout setw(8) x setw(8) y endl;输出结果为:输出结果为: 2 3 6 2.6 1.8 使用使用setw() setw() 必须在程序的开始处增加:必须在程序的开始处增加:#include#include (2)(2)设置数
11、据间隔设置数据间隔l输入输出流:输入输出流:C+ 程序编译原理:程序编译原理:编辑编辑链接链接编译编译执行执行程序代码的录入,生成源程序*.cpp语法分析查错,翻译生成目标程序*.obj与其它目标程序或库链接装配,生成可执行程序*.exeC+C+语言的文件扩展名语言的文件扩展名l为了使编译器能够区别是为了使编译器能够区别是C C语言还是语言还是C+C+语语言,言,C+C+语言体系规定用语言体系规定用“”(意即(意即)作为)作为C+C+语言源文件的扩展名语言源文件的扩展名以区别于以区别于C C语言用的语言用的“.C”.C”文件扩展名。文件扩展名。l与与C+C+语言源文件相关的头文件扩展名一般语言
12、源文件相关的头文件扩展名一般仍用仍用“”。引用系统的头文件不用加。引用系统的头文件不用加“.h”.h”,用户自定义的头文件,引入的时,用户自定义的头文件,引入的时候需要加上候需要加上“.h”.h”注释符注释符 1. 1. 段注释:段注释: / /* * */ / 2. 2. 单行注释:单行注释:/ / 当只做单行注释当只做单行注释时便可用时便可用“/”/”符号表示从此符号符号表示从此符号起至行尾均为行注释内容。起至行尾均为行注释内容。 3. 3. 程序编译时将忽略所有的注释内程序编译时将忽略所有的注释内容容标识符命名 标识符是用来标识变量名、函数名、数组名、类名、对象名、标识符是用来标识变量名
13、、函数名、数组名、类名、对象名、类型名、文件名等的有效字符序列。标识符命名需要遵守其类型名、文件名等的有效字符序列。标识符命名需要遵守其合法性、有效性和易读性的原则。合法性、有效性和易读性的原则。(1)合法性合法性C+C+规定标识符由大小写字母、数字字符规定标识符由大小写字母、数字字符(09)(09)和下划线组成,和下划线组成,且第一个字符必须为字母或下划线。任何标识符中都不能有且第一个字符必须为字母或下划线。任何标识符中都不能有空格、标点符号、运算符及其他非法字符。标识符的大小写空格、标点符号、运算符及其他非法字符。标识符的大小写是有区别的,并且不能和系统的关键字同名。是有区别的,并且不能和
14、系统的关键字同名。(2)有效性有效性 标识符的长度最好不要超过标识符的长度最好不要超过32个,有的编译系统只能识别前个,有的编译系统只能识别前32个字符,前个字符,前32个字符相同的两个不同标识符被有的系统认个字符相同的两个不同标识符被有的系统认为是同一个标识符。为是同一个标识符。(3)易读性易读性 做到做到“见名知意见名知意”就可以达到易读性的目的。许多程序员采就可以达到易读性的目的。许多程序员采用用“匈牙利标记法匈牙利标记法”来定义标识符。这种方法是:在每个变来定义标识符。这种方法是:在每个变量名前面加上表示数据类型的小写字符,变量名中每个单词量名前面加上表示数据类型的小写字符,变量名中每
15、个单词的首字母均大写。的首字母均大写。标识符标识符例例: 判断下面哪些是合法的标识符:判断下面哪些是合法的标识符: MyFileSalary 94amountvoid94SalarySalary94$amountf3.5Num_of_Student C+的字符集的字符集ASCII码码字符集是计算机中的常用字符集。字符集是计算机中的常用字符集。它包括英文字母及阿拉伯数字等它包括英文字母及阿拉伯数字等128个字符,个字符,存储一个存储一个ASCII码码占用一个字节占用一个字节单元。单元。汉字国标码汉字国标码用于汉字处理。国标码的存用于汉字处理。国标码的存储占用两个字节单元。储占用两个字节单元。Un
16、icode字符集对各类字符进行字符集对各类字符进行统一的双统一的双字节编码字节编码。它包括了世界上多种语言的基本。它包括了世界上多种语言的基本字符,字符,最多可容纳最多可容纳65536个个字符。字符。 ASCII码码字符集,国标码字符集都是它的子集。字符集,国标码字符集都是它的子集。常用字符集: 关 键 字关键字(keyword):又称保留字。是由系统定义的具有特定含义的英文单词。关键字不能另作它用。C+区分大小写,关键字全部由小写字母组成。标准C+(ISO14882)定义了74个关键字,具体的C+编译器会做一些增删。常用关键字及分类见表2.1。数据类型说明数据类型说明符与修饰符符与修饰符bool char wchar_t class const double enum float int long short signed struct union unsigned void volatile存储类型说明存储类型说明符符auto extern inline register static访问说明符访问说明符friend p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学习计划锦集八篇
- 工资绩效方案
- 2024全新科技企业三人合伙经营合同范本下载3篇
- 学科工作计划四篇
- 公司会计年终工作总结例文文本
- 2022教育培训年度工作计划
- DB31-T 1378-2022 第二类医疗器械注册服务规范
- 六年级英语上册第三单元 unit3 A let27s talk
- 公路货物运输费用计算
- 《创业讲座课件》课件
- 弱电智能化工程技术方案
- 编辑出版实务与技能(仅供参考)
- 《乳品加工工》技师培训课件-项目五 乳制品加工工艺及设备
- 2024-2025北师大版八年级上数学期末测试题及答案
- 人工智能与未来教育智慧树知到期末考试答案章节答案2024年丽水学院
- 走进歌剧世界智慧树知到期末考试答案章节答案2024年北京航空航天大学
- 三字经英文版-赵彦春
- DL-T 5148-2021水工建筑物水泥灌浆施工技术条件-PDF解密
- 高三班高考前心理疏导主题班会
- GB/T 22849-2024针织T恤衫
- 2024年国家电网招聘之通信类题库及答案【名师系列】
评论
0/150
提交评论