资源预览内容
第1页 / 共160页
第2页 / 共160页
第3页 / 共160页
第4页 / 共160页
第5页 / 共160页
第6页 / 共160页
第7页 / 共160页
第8页 / 共160页
第9页 / 共160页
第10页 / 共160页
亲,该文档总共160页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第三章第三章 数据类型数据类型我们将讨论的数据类型有:我们将讨论的数据类型有:整数类型、整数子类、浮点类型、数组、向量、整数类型、整数子类、浮点类型、数组、向量、 指针等。指针等。数据类型是程序设计语言的一个重要概念和重要数据类型是程序设计语言的一个重要概念和重要 内容。内容。首先复习已在第二章先行介绍的有关数据类型的首先复习已在第二章先行介绍的有关数据类型的 一些基本概念,接着详细介绍一些基本概念,接着详细介绍C+C+定义的各种常用的定义的各种常用的 数据类型,重点在于如何在程序设计中灵活地应用这数据类型,重点在于如何在程序设计中灵活地应用这 些类型。些类型。3.1 3.1 数据类型概述数据类型概述1 1数据类型的定义数据类型的定义2 2数据类型的涵义数据类型的涵义3 3数据类型的数据类型的的重要性的重要性4 4C+C+的数据类型一览的数据类型一览以上内容参见以上内容参见2.32.33.2 3.2 整数类型整数类型整数类型简称整型,用来描述整型数值数据,其类整数类型简称整型,用来描述整型数值数据,其类 型符是型符是intint。pp 整数类型是程序中最常用的类型之一。整数类型是程序中最常用的类型之一。pp 整数类型的值域(值的集合)是无限整数集的子集整数类型的值域(值的集合)是无限整数集的子集 。例如:例如:123、678、10000,均是整型常量;int a,b,c; /a,b,c均被说明为整型变量。 1. 1. 整数类型的分类整数类型的分类(1 1)依据其是否具有符号位,分为有符整型()依据其是否具有符号位,分为有符整型( signed signed intint)和无符整型()和无符整型(unsigned unsigned intint),默认形式为),默认形式为 有符整型;有符整型;(2 2)依据其存储表示位数的不同又分为:标准整型)依据其存储表示位数的不同又分为:标准整型 ( (intint) )、短整型、短整型(short (short intint) )和长整型和长整型(long (long intint) )。例如:例如:int a,b,c; /a,b,c均为有符整型变量。unsigned int num; /num为无符整型变量(1 1)和()和(2 2)的组合,就产生了:有(无)符整型、)的组合,就产生了:有(无)符整型、 有(无)符短整型、有(无)符长整型等六种形式,有(无)符短整型、有(无)符长整型等六种形式, 默认形式总是有符。默认形式总是有符。1. 1. 整数类型的分类(续)整数类型的分类(续)下面给出整型分类表:下面给出整型分类表:长长长长度度(bit)(bit)有符形式有符形式无符形式无符形式默默认认认认形式形式8 8signed charsigned charunsigned charunsigned char有符形式有符形式1616signed short signed short intintunsigned short unsigned short intint有符形式有符形式3232signed signed intintunsigned unsigned intint有符形式有符形式*32*32signed long signed long intint unsigned long unsigned long intint有符形式有符形式例如:例如:usigned int x=23;int y=-67;/等价于signed int y=-67unsigned int z=-43;/表示方式错误 2. 2. 整型的表示范围整型的表示范围下表给出下表给出3232位编译器(位编译器(3232位机)的各种整数类型位机)的各种整数类型 的表示范围。的表示范围。类类类类型型 bit bit表示范表示范围围围围 解解释释释释charchar 8 8 -2 -27(7(2 27-7-1)1)-128127-128127signed char signed char 8 8 -2 -27(7(2 27-7-1)1)-128127-128127unsigned char unsigned char 8 8 0 0(2 28-8-1)1) 0255 0255short short intint1616 -2 -215(15(2 215-15-1)1)-3276832767-3276832767signed short signed short intint 1616 -2 -215(15(2 215-15-1)1)-3276832767-3276832767unsigned short unsigned short intint16160 0(2 216-16-1)1)065535065535intint3232 -2 -231(31(2 231-31-1)1)-2147483648 2147483647-2147483648 21474836472. 2. 整型的表示范围(续)整型的表示范围(续)类类类类型型 bit bit表示范表示范围围围围 解解释释释释signed signed intint3232 -2 -231(31(2 231-31-1)1)-2147483648 2147483647-2147483648 2147483647unsigned unsigned intint 32320 0(2 231-31-1)1)0429496729504294967295long long intint 3232 -2 -231(31(2 231-31-1)1)-2147483648 2147483647-2147483648 2147483647signed long signed long intint3232 -2 -231(31(2 231-31-1)1)-2147483648 2147483647-2147483648 2147483647unsigned long unsigned long intint 32320 0(2 232-32-1)1)0429496729504294967295例如:例如:1+51+5,a3a3, x0char;pp 值域:是由语言定义的,与标准字符集有关的枚举值域:是由语言定义的,与标准字符集有关的枚举 集,例如集,例如ASCIIASCII字符集。字符集。例如: a、A、x均是字符常量; char c1,c2;/c1,c2被说明为字符变量。1. 1. 字符类型的分类字符类型的分类依据其是否具有符号位,分为有符字符型(依据其是否具有符号位,分为有符字符型(signed signed charchar)和无符字符型()和无符字符型(unsigned unsigned charchar),默认形式为),默认形式为 有符字符型。有符字符型。例如:例如:char int a,b,c; /a,b,c均为有符字符型变量。unsigned char num; /num为无符字符型变量2. 2. 字符类型的表示范围字符类型的表示范围类类类类型型 bit bit表示范表示范围围围围 解解释释释释charchar 8 8 -2 -27(7(2 27-7-1)1)-128127-128127signed char signed char 8 8 -2 -27(7(2 27-7-1)1)-128127-128127unsigned char unsigned char 8 8 0 0(2 28-8-1)1) 0255 02553. 3. 字符类型的操作集字符类型的操作集也即、允许对字符型数据对象进行也即、允许对字符型数据对象进行算术运算算术运算、关关 系运算系运算、逻辑运算、逻辑运算、位运算位运算、i/oi/o操作操作、赋值操作赋值操作等。等。继承了整数类型的操作集,包括:继承了整数类型的操作集,包括:算术运算算术运算、关关 系运算系运算、逻辑运算、逻辑运算、位运算位运算、i/oi/o操作操作、赋值操作赋值操作等。等。pp 注意注意 字符型虽然继承了整数类型的操作集,但在输出操字符型虽然继承了整数类型的操作集,但在输出操 作上还是存在差异。对字符数据执行输出操作,输出作上还是存在差异。对字符数据执行输出操作,输出 的不是整数而是字符。的不是整数而是字符。3. 3. 字符类型的操作集(续)字符类型的操作集(续)例如:例如:int a=65; char b=65;cout 。字符字符 内内码码码码意意义义义义字符字符 内内码码码码意意义义义义aa0x070x07响响铃铃铃铃bellbell”0x220x22双引号双引号b b 0x080x08退格退格backspacebackspace 0x270x27单单单单引号引号t t 0x090x09水平制表符水平制表符HTHT?0x3F0x3F问问问问号号nn0x0A0x0A换换换换行行returnreturn 0x5C0x5C反斜杠字符反斜杠字符v v 0x0B0x0B垂直制表符垂直制表符VTVT dddddd 0xdd0xdd1313位八位八进进进进 制制r r0x0D0x0D回回车车车车 xhhxhh 0xhh0xhh1313位十六位十六进进进进制制pp 转义字符一览表转义字符一览表(1)(1) nn的用途,用来使输出流换行的用途,用来使输出流换行 coutcoutpp 语法说明语法说明 enumenum:系统保留字;:系统保留字; 枚举类型名:用户定义枚举类型名:用户定义 的标识符的标识符 值表:列出该类型的所值表:列出该类型的所 有可能的取值(有可能的取值(n n个枚举个枚举 常量)。常量)。 值表中的每个值都是一值表中的每个值都是一 个命名的整型常量:个命名的整型常量: 名名=整数整数 例例3-1 3-1 将由五种颜色组成的颜色集定义成枚举类型,将由五种颜色组成的颜色集定义成枚举类型, 其值对应的整数区间为其值对应的整数区间为1,51,5。enum Colors Red=1,Blue,Green,White,Black。2. 2. 定义枚举类型定义枚举类型 enum 例例3-2 3-2 将将WordWord的一级菜单功能表定义为枚举类型。的一级菜单功能表定义为枚举类型。enum WordMenu File,Edit,View,Insert,Format,Tools,Table, Reguirements,Windows,Help;3. 3. 声明枚举类型变量声明枚举类型变量 在程序中定义了枚举类型后,可以用该类型来声在程序中定义了枚举类型后,可以用该类型来声 明枚举变量,明枚举变量,其语法与其它类型的变量之声明是一样其语法与其它类型的变量之声明是一样 的的 。enumenum Week Week Sunday=10, Monday,Tuesday, Wednesday,Thursday, Friday,Saturday; Week weekday = Sunday;例例3-3 3-3 声明声明Week类型变量weekday。该语句说明了一个变量该语句说明了一个变量weekdayweekd
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号