欢迎来到天天文库
浏览记录
ID:39963617
大小:404.31 KB
页数:30页
时间:2019-07-16
《c面向过程的程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第2章C++面向过程的程序设计2.1数据类型2.2常量和变量2.3基本控制结构2.4数组和指针2.5函数12.1数据类型数据类型的作用有两个:一是指明为数据分配多大的存储空间和规定了数据的存储结构,进而规定了数据的取值范围;二是规定了数据所能进行的操作。22.1数据类型C++数据类型基本类型布尔型(bool)字符型(char)空类型(void)整型短整型(shortint)无符号整型(unsignedint)长整型(longint)基本整型(int)实型(浮点型)双精度型(double)单精度型(floa
2、t)指针构造类型类(class)枚举(enum)联合(union)结构体(struct)数组32.1数据类型2.1.1基本数据类型的取值范围数据类型长度(字节数)取值范围bool1false,truechar1-128~127unsignedchar10~255short(int)2-32768~32767int4-231~(231-1)unsigned(int)40~(232-1)long(int)4-231~(231-1)float4±(3.4×10-38~3.4×1038)double8±(1.7×
3、10-308~1.7×10308)42.1数据类型2.1.2C++的扩展1.布尔类型(bool)布尔类型(bool)是ANSIC++新增的数据类型,其取值只能是true(1)和false(0)。主要用来建立复杂的条件判断和控制循环操作的标志。2.结构、联合和枚举名可直接作为类型名在C语言中定义结构体、联合或枚举类型的变量时,必须加上struct、union或enum关键字。在C++中,自定义的结构名、联合名和枚举名可以直接作为类型名使用,在定义变量时,在结构名、联合名或枚举名前可省略struct、unio
4、n或enum关键字。3.无名联合在C++中定义联合时,可以在union关键字后省略联合名,这样定义的联合称为无名联合。52.1数据类型union{doubled;inti;};在此无名联合中,d和i共享相同的存储空间。无名联合中定义的数据项可以直接作为变量使用,例如:d=8.3;i=5;62.1数据类型4.数据类型转换表达式中的类型转换分为自动类型转换和强制类型转换。C++的强制类型转换有两种格式。格式1:(数据类型)表达式在使用这种格式时,如果表达式为包含多个操作数的表达式,则表达式应加括号。格式2:数
5、据类型(表达式)这是C++扩充的一种强制类型转换方式。将数据类型名作为函数名,表达式作为参数,采用函数调用的形式。72.2常量和变量2.2.1常量1.整型常量2.实型常量3.字符常量4.字符串常量5.布尔常量布尔常量只有两个:false和true。6.符号常量除了直接用值表示常量外,还可以用标识符来表示常量,称为符号常量。C++中可以使用const修饰符和#define宏定义命令定义符号常量。使用const声明常量的格式为:const数据类型常量名=常量值;82.2常量和变量在使用const定义符号常量时
6、必须要进行初始化,在程序运行过程中不能改变其值。定义符号常量,可以像C语言中用#define宏定义命令定义。对于宏定义命令#define,编译器只做简单文本替换,只是对源程序编写上的一种简化,它不进行类型检查,在某些情况下易出错。使用const定义的符号常量具有类型,在使用时系统需要进行类型检查。【例2.1】符号常量的定义和使用示例在C++中,用const定义的符号常量可以用来定义数组。const还可以修饰指针和函数的参数和返回值。在C++中一般使用const定义符号常量,不推荐使用#define定义符号
7、常量。92.2常量和变量2.2.2变量1.变量的定义2.存储类型3.变量定义语句的位置在C语言中,全局变量的定义必须在所有函数定义之前,局部变量的定义必须在复合语句的可执行语句之前。C++中变量定义语句的位置非常灵活,可以与可执行语句在程序中交替出现。在C++中甚至可以在for循环语句中定义变量,例如:for(inti=0;i<10;i++)102.2常量和变量4.作用域运算符“::”C/C++中,在相同的作用域内,多个变量不能同名,但在不同的作用域内允许定义同名的变量。如果一个内层作用域中定义了与外层作
8、用域中同名的变量,那么在该作用域模块中对这个变量的访问只是对该内层作用域局部变量的访问。【例2.2】不同作用域同名变量的访问C++语言中可以使用作用域运算符“::”在局部变量的作用域内访问同名的全局变量。【例2.3】作用域运算符的使用示例注意,作用域运算符“::”只能用来访问全局变量,而不能用来访问同名的非全局变量。【例2.4】作用域运算符的错误用法112.3基本控制结构C++的流程控制语句与C语言完全相同。2.3.1顺序结构
此文档下载收益归作者所有