教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

C++ 第四章 复合数据类型

来源:网络收集 时间:2026-01-21
导读: c++ 第4章 复合数据类型4.1 数组 4.2 指针 4.3 结构体 4.4 自定义类型及枚举 4.5 引用 c++ 4.1 数组 哈工大华德学院计算机系 数组基本概念 数组是同类型数据的有序集合。 集合中的每一个元素称为数组元素。 在数组中的每一个元素都具有一个序号(注意,在 C++

c++

第4章 复合数据类型4.1 数组 4.2 指针 4.3 结构体 4.4 自定义类型及枚举 4.5 引用

c++

4.1 数组

哈工大华德学院计算机系

数组基本概念 数组是同类型数据的有序集合。 集合中的每一个元素称为数组元素。 在数组中的每一个元素都具有一个序号(注意,在 C++中此序号从0开始),称为下标。 数组中数组元素的个数称为数组的长度。 掌握一维和二维数组

2

C++ 程序设计

c++

哈工大华德学院计算机系

4.1.1 数组的定义 格式:类型说明符 数组名[第1维长度][第2维长 度]…[第n维长度];

作用:定义一个n维数组。 类型说明符可以是任何一种数据类型,数组名为用户 指定的任一合法C++标识符。 维数必须以常量或常量表达式的形式给出。 数组的维数超过1时即构成了多维数组,多维数组是数 组的嵌套 。

3

C++ 程序设计

c++

哈工大华德学院计算机系

理解:int a[10]; int b[3][4];4.1.2 数组的初始化 完全初始化。 要求初值列表中给定值的个数与数组长度相等, 此时各数组元素按对应的位序被赋予给定的值。 如: int array[5]={1,2,3,4,5}; int array[ ]={1,2,3,4,5};

4

C++ 程序设计

c++

哈工大华德学院计算机系

部分初始化。 初值列表中值的个数小于数组长度,未给出的部分 取默认值0。 如:int array[5]={1,2}; static型数组。 如给出初值列表则按列表中给定的值赋值,否则元 素的默认值全部为0。 如:static int array[5]; 等价于static int array[5]={0,0,0,0,0};

5

C++ 程序设计

c++

哈工大华德学院计算机系

4.1.3 数组的使用 数组定义后,可以通过两种方式使用它,一是 使用单个数组元素,二是使用整个数组。 1.数组元素的使用 数组元素通过下标来使用。 通过下标使用数组元素的方法为:数组名 [下标表达式]

6

C++ 程序设计

c++

哈工大华德学院计算机系

例4-2 计算并输出二维数组主对角线上元素之和。 #include <iostream.h> 程序运行结果: void main() sum is:15 { int i,j,array[][3]={1,2,3,4,5,6,7,8,9}; int sum=0; for(i=0;i<3;i++) for(j=0;j<3;j++) if(i==j) sum+=array[i][j]; cout<<"sum is : "<<sum<<endl; }7C++ 程序设计

c++

哈工大华德学院计算机系

2. 数组的使用 数组还可以做为一个整体加以使用,格式为: 数组名 或 数组名[] 数组名实质上标识着数组在内存中存放的首地 址,是一个地址常量,当需要传送大量同类型数据 进行统一处理时,才以传地址的形式用数组名标识 整个数组。

8

C++ 程序设计

c++

哈工大华德学院计算机系

4.1.4 字符数组与字符串 字符数组,即数组中每一个元素都为字符型,是 一种特殊类型数组,常被用来保存和处理字符串。 1. 字符串常量有隐含的结束符“\0”,因此

其长度是串中 字符个数加1。 如:char ss[5]=“Hello”; 是错误的 。 2. 以字符串常量为字符数组赋值,只允许出现在字符数 组初始化时。 如:char ss1[6];ss1=“Hello”;是错误的。 3. 字符数组正确赋值后,可以使用整个数组来输出字符 串。为什么?如: char ss[]="Hello World!"; cout<<ss<<endl; //输出的结果是Hello World!9C++ 程序设计

c++

哈工大华德学院计算机系

操作字符串的库函数 , string.h 1. 字符串赋值 使用方法:strcpy(目标串,源串);

2. 字符串比较 使用方法:strcmp(字符串1,字符串2); 两个字符串相等结果为0,字符串1大于(按字符的 ASCII编码为序)字符串2结果为大于0的数,字符串2 大于字符串1结果为小于0的数。

10

C++ 程序设计

c++

哈工大华德学院计算机系

3. 字符串连接 使用方法:strcat(字符串1, 字符串2); 返回字符串1的首地址,且字符串1被去掉末尾的结束 符’\0’后接续了串2的内容。字符串1必须为字符数组。 4. 字符串求长度 使用方法:strlen(源串); 返回源串的有效字符个数(不包含结束符)。

11

C++ 程序设计

c++

4.2 指针

哈工大华德学院计算机系

4.2.1 指针变量的定义 指针变量定义的格式为: 类型说明符 *指针变量名[=初始化]; 类型说明符是指该指针变量指向的变量所具有的类型。 “*”号表示这里定义的是一个指针类型的变量。 如: int *px; 定义了一个可以指向int型数据的指针变量px,它 仅能用来存放int型数据的地址。

12

C++ 程序设计

c++

哈工大华德学院计算机系

1. 内存分配 计算机中的内存是编址的。在程序编译或者运行 的时候,系统开辟了一张表。每遇到一次声明语句都 会开辟一个内存空间,并在表中增加一行纪录。 2. 指针为访问内存空间提供了新的方式 在未引入指针之前,程序中对内存空间的访问是 通过变量名的方式,变量名即对它所在的内存空间的 一种抽象。指针则提供了更贴近本质、更快捷自由的 访问方式。

13

C++ 程序设计

c++

哈工大华德学院计算机系

4.2.2 *和&运算 1. *运算 在定义指针时“*”作为指针变量的标志,程序 中出现指针名前加*运算符,则表示“取得指针所指向 内存单元的内容”的运算。 如: double f=5,*p=&f;//*是标志 cout<<*p<<endl; //*是取内容运算,输出为5 2. &运算 “&”作为“取变量地址”的运算。与“*运算” 互逆。14C++ 程序设计

c++

哈工大华德学院计算机系

例4-6 *与&运算符的使用。 程序运行结果: a=10 #include <iostream.h> *pa=10 void main( ){ *(&a)=10 &a=0012FF7C int a=10; pa=0012FF7C int *pa; &(*pa)=0012FF7C pa=&a; cout<<"a="<<a<<"\n\t*pa="<<*pa<<"\n\t\t*(&a)="< <*(&a)<<endl; cout<<"&a="<<&a<<"\n\tpa="<<pa<<"\n\t\t&(*pa)= "<<&(*pa)<<en

dl; }15C++ 程序设计

c++

哈工大华德学院计算机系

4.2.3 指针的算术运算 指针可以进行4种算术运算(+,-,++,--)。 1. 指针与整数的加减运算(+,-) 指针 p加上或减去n,其意义是指针当前指向位置 的前方或后方第 n 个数据的地址。执行加减运算并不 改变指针的指向。 两个同类型的指针可以执行减“-”运算,结果是 两个指针之间相差多少个该类型的地址空间。 如: int a,b,c; int *pa=&a,*pb=&b,*pc=&c; 则pa-pb为1,pa-pc为2。 2. 指针自加一,自减一运算(++,--) 指针 p执行自加一或自减一,其意义是修改指针 指向到下一个或前一个数据。16C++ 程序设计

…… 此处隐藏:1450字,全部文档内容请下载后查看。喜欢就下载吧 ……
C++ 第四章 复合数据类型.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/1335280.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)