ch01c基础知识

上传人:san****019 文档编号:70153664 上传时间:2019-01-16 格式:PPT 页数:96 大小:1,021.51KB
返回 下载 相关 举报
ch01c基础知识_第1页
第1页 / 共96页
ch01c基础知识_第2页
第2页 / 共96页
ch01c基础知识_第3页
第3页 / 共96页
ch01c基础知识_第4页
第4页 / 共96页
ch01c基础知识_第5页
第5页 / 共96页
点击查看更多>>
资源描述

《ch01c基础知识》由会员分享,可在线阅读,更多相关《ch01c基础知识(96页珍藏版)》请在金锄头文库上搜索。

1、C+ 程序设计,计算机语言的基本体系结构,语言的基本体系结构,程序设计语言,本章将简要介绍C+中的数据类型及相关运算,以及常量、变量、表达式、语句等,最后介绍简单的输入输出方法。,第一章 C+基础知识,第一章 C+基础知识,1.3 C+的词法单位,1.6 运算符和表达式,1.8 简单的输入输出,1.7 数组与字符数组,1.5 常量和变量,1.4 C+ 中的数据类型,ok,1.1 C+语言概述,1.2 一个C+程序实例,1.1 C语言概述,历史: C+是由C语言为基础发展起来的。 C语言是作为UNIX操作系统的开发语言为人们所认识。七十年代末,C语言开始移植到非UNIX环境中,并逐步脱离UNIX

2、系统成为一种独立的程序设计语言。 1988年美国国家标准协会ANSI对C语言进行了标准化,产生了ANSI C。,1.1 C 语言概述,(1)C语言既具备高级语言的结构和编程环境,又提供类似于汇编语言那样的系统资源操纵能力及程序执行效率。适合解决有实时要求的问题。,C语言的主要特点:,(2)有丰富的运算符和数据类型,表达式类型多样化,可以方便地实现在其他语言中较难实现的运算,对各种不同类型的程序设计都有良好的适应性。,(3)以函数为基础实现程序的结构化设计,支持大型程序的多文件构成及单个文件独立编译,适合大型复杂程序的设计。,(4)语言简洁、紧凑,使用方便、灵活。,(5)可移植性好。,1.1 C

3、 语言概述,C+是由C发展成为的以面向对象为主要特征的语言。作为C语言的超集,C+继承了C的所有优点,又对数据类型做了扩充,使得编译系统可以检查出更多类型错误。,C+支持面向对象程序设计,通过类和对象的概念把数据和对数据的操作封装在一起,通过派生、继承、重载和多态性等特征实现了软件重用和程序自动生成,使得大型复杂软件的构造和维护变得更加有效和容易。,C+语言的主要特点:,1.1 C 语言概述,C+与C完全兼容,很多用C编写的库函数和应用程序都可以为C+所用。,但正是由于与C兼容,使得C+不是纯正的面向对象的语言,它既支持面向对象程序设计,也支持面向过程设计。但我们应当注意用面向对象的思想进行设

4、计,以发挥出C+的优势。,C+语言的兼容性:,1.2 一个C+程序实例,# include int max(int i, int j) /A if (i=j) return i; else return j; int main(void) /B coutij; /从键盘上输入变量值 coutmax number is:max(i, j) n ; /输出提示和结果 return 0; ,【例1.1】 一个简单的C+程序。,程序组成:,注释,编译预处理指令,程序体,由若干函数组成,其中有且仅有一个主函数main(),这是程序的执行入口。在Windows编程中定义为winmain()。,下面进入VC

5、+ 运行,1.3 C+的词法单位,1.3.1 C+的字符集,1.3.2 关键字,1.3.3 标识符(ID,identifier),1.3.4 标点符号,ok,1.3.1 C+的字符集,ASCII码字符集是计算机中的常用字符集。它包括英文字母及阿拉伯数字等128个字符,存储一个ASCII码占用一个字节单元。,汉字国标码用于汉字处理。国标码的存储占用两个字节单元。,Unicode字符集对各类字符进行统一的双字节编码。它包括了世界上多种语言的基本字符,最多可容纳65536个字符。 ASCII码字符集,国标码字符集都是它的子集。,ok,常用字符集:,C+的字符集,C+语言基本字符:,1.3.2 关 键

6、 字,关键字(keyword): 又称保留字。是由系统定义的具有特定含义的英文单词。关键字不能另作它用。,C+区分大小写,关键字全部由小写字母组成。标准C+(ISO14882)定义了74个关键字,具体的C+编译器会做一些增删。常用关键字及分类见表2.1。,ok,关 键 字,表2-1 C+常用关键字及分类,ok,关 键 字,1.3.3 标识符,标识符(Identifier,ID ): 是程序员定义的“单词”,用来给变量、常量、数据类型、函数等命名。,合法标识符由字母或下划线开始,由字母、数字、下划线组成,其有效长度为131个字符,长度超过31个字符者只识别前31个字符,VC+标识符长度为1247

7、个字符。,建议使用有一定含义的英文单词或拼音序列作标识符,以提高可读性;另外尽量不用下划线或双下划线打头,以免与系统定义的关键字冲突。,ok,标识符,例: 判断下面哪些是合法的标识符:,MyFile,Salary 94,amount,void,94Salary,Salary94,$amount,f3.5,Num_of_Student,1.3.4 标点符号,标点符号: # ( ) , : ; “ 等。,标点符号的作用:,有一定的语法意义。如字符和字符串常量分别用 和 “ ”引起来。,对语法符号起分隔作用。如 ;等,1.4 C+中的数据类型,ok,C+基本数据类型称为内置数据类型,内置数据类型不仅

8、定义了数据类型,还定义了常用操作。本节仅介绍各种基本数据类型的定义,常用操作将在后面介绍。,C+为强类型语言,所有数据的使用严格遵从“先说明后使用”的原则,以便编译器进行编译。,整型:用来存放整数,整数(有符号的整数)在内存中存放的是它的补码,无符号数没有符号位,存放的就是原码。整数占用的字节数与机型有关,32位机上占用4个字节。,内置数据类型:,字符型:用来保存字符,存储的是该字符的ASCII码,占用一个字节。如大写字母A的ASCII码为65,在对应的一个字节中存放的就是65。字符型数据从本质上说也是整数,可以是任何一个8位二进制整数。C+同时也支持宽字符类型(wchar_t),或称双字节字

9、符型。,实型:单精度和双精度型都用来存放实数,两者表示的实数精度不同。实数在内存中以规范化的浮点数存放,包括尾数、数符和阶码。数的精度取决于尾数的位数,32位机上实型为23位(因规范化数的数码最高位恒为1,不必存储,实际精度为24位),双精度为52位。,逻辑型:也称布尔型,其取值为true(逻辑真)和false(逻辑假),存储字节数在不同编译系统中可能有所不同,VC+6.0中为1个字节。布尔型在运算中可以和整型相互转化,false对应为0,true对应为1或非0,无值型:主要用来说明函数的返回值类型,将在函数一章中具体介绍。,基本数据类型还可以加上一些修饰词,包括:signed(有符号)、un

10、signed(无符号)、long(长)、short(短)。参见下表:,VC+中所有基本数据类型,1.5 变量和常量,1.5.1 变 量,1.5.2 文字常量,1.5.3 常变量,在程序中,常量和变量是用来表示数据的; 常量又分为字面常量、常变量;,ok,1.5.1 变 量,1 变量说明,2 变量初始化值,变量,在程序中是指可以改变值的量; 变量必须用标识符进行标识,称为变量名; 变量有类型之分,如整形变量、字符变量等; 任何变量都必须先说明后使用;一是便于编译程序为变量分配空间,二是便于编译时进行语法检查; 变量使用的第一步,是给变量赋初始值;,ok,变量说明,在C+中,变量说明的一般格式为:

11、 存储类型数据类型 变量名1,变量名2, ,变量名n;,例: int i, j, k; /说明三个整型变量i, j, k float x, y, z; /说明三个单精度实型变量x, y, z char c1, c2; /说明两个字符型变量c1, c2 double dx; /说明一个双精度型变量dx,变量初始化,赋初值: 定义变量时即给变量一个值称为变量初始化 例如: int a=3, b=4, c=5; float x=3.0; 变量初始化可以避免引用到随机变量。,1.5.2 文字常量,1. 整型常量,4. 字符串常量,3. 字符型常量,2. 实型常量,文字常量:指程序中直接给出的量; 常量

12、的值在程序执行过程中保持不变;并且存储在程序区,而非数据区; 根据取值和表示方法的不同,可分为以下几种:,ok,整型常量,十进制表示法,八进制表示法,十六进制表示法,其他表示法,整型常量表示方法:,ok,整数的十进制表示方法,十进制表示与我们熟悉的书写方式相同。 例: 15 -24,ok,整数的八进制表示,八进制表示以0开始,由数字07组成,用来表示一个八进制数。 例: 012 /八进制数12,即十进制数10 -0655 /八进制数-655,即十进制数-429,ok,整数的十六进制表示,十六进制以0X(大小写均可)开始,由数字09和字母AF(大小写均可)组成,用来表示一个十六进制数。 例: 0

13、x32A /十六进制数32A,即十进制数810 -0x2fe0 /十六进制数-2fe0, /即十进制数-12256,ok,整数的其他表示方法,长整型常量和无符号整型常量: 长整型常数以 L 或 l 结尾,无符号常整数以 U 或 u 结尾,以 U L 或 L U(大小写均可)结尾则可表示无符号长整型常数。 例如: -84L /十进制长整数-84 026U /八进制表示的无符号整数26 0X32LU /十六进制表示的无符号长整型数32。,实型常量,(1)一般形式与平时书写形式相同,由数字 0 9和小数点组成。例如: 0.23 -125.76 0.0 .46 -35.,(2) 指数形式(也称为科学表

14、示法)表示为尾数乘以10的次方形式,由尾数、E或e和阶数组成。指数形式要求在E或e前面的尾数部分必须有数字,后面的指数部分必须为整数。,例 : 判断下列表示是否合法,123E12,-.34e-2,E4,1.43E3.5,包含小数点和10的幂的数为实型常量 表示方法:,字符型常量,字符常量: 用单引号引起来的单个字符。在内存中保存的是字符的ASCII码值。在所有字符中,可显示字符通常就用单引号引起来表示: a /字符a /字符 4 /字符4 /空格字符 特殊情况字符,如不可显示的字符等,c+使用转义序列表示方法(详见表1-3,此处略): n /换行 /字符,4. 字符串常量,字符串常量与字符型常

15、量的区别:,字符串常量“ a“ 占两个字节,存放a和0,值为0x6100,字符型常量a 占一个字节,存放a,值为0x61,字符串常量: 用双引号引起来的若干个字符。 例如: “ I am a Chinese.“, “123“,“ a “, “ “,1.5.3 常变量,标识符常量: 用常量说明符const给文字常量起的名字(标识符),因为其说明和引用形式很像变量,所以也称常变量; 例如: const float PI=3.14159; const int Number_of_Student=100; 常变量必须也只能在说明时进行初始化; 常变量初始化之后,不允许再被赋值; 常变量必须先说明后使用; 常变量存储在数据区,并且可以按地址访问,编译时系统对常变量进行类型检查。 C+建议使用常变量,而不要使用文字常量。,1.6 运算符和表达式,1.6.1 运算符、优先级和结合性,1.6.2 基本运算符及其表达式,1.6.4 算术类型转换和赋值类型转换

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号