资源描述:
《《数组指针与字符串》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第六章数组指针与字符串数组指针动态内存分配字符串数组的概念数组是具有一定顺序关系的若干相同类型变量的集合体,组成数组的变量称为该数组的元素。每个元素有n个下标的数组称为n维数组。数组属于自定义数据类型,使用之前首先要进行类型声明。说明:1.数组元素在内存中顺次存放,它们的地址是连续的。2.数组名字是数组首元素的内存地址。3.数组名是一个常量,不能被赋值。数组在声明数组时对数组元素赋以初值。例如:inta[10]={0,1,2,3,4,5,6,7,8,9};可以只给一部分元素赋初值。例如:inta[10]={0,1,2
2、,3,4};在对全部数组元素赋初值时,可以不指定数组长度。例如:inta[]={1,2,3,4,5}一维数组声明形式:数组类型标识符[常量表达式]二维数组的声明及使用数据类型标识符[常量表达式1][常量表达式2]…;例:inta[5][3];表示a为整型二维数组,其中第一维有5个下标(0~4),第二维有3个下标(0~2),数组的元素个数为15,可以用于存放5行3列的整型数据表格。存储顺序按行存放,上例中数组a的存储顺序为:二维数组的声明类型说明符数组名[常量表达式][常量表达式]例如:floata[3][4];a00a
3、01a02a03a10a11a12a13a20a21a22a23a[0]——a00a01a02a03a[1]——a10a11a12a13a[2]——a20a21a22a23a可以理解为:使用例如:b[1][2]=a[2][3]/2下标不要越界二维数组的声明及使用二维数组的初始化将所有数据写在一个{}内,按顺序赋值例如:inta[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};分行给二维数组赋初值例如:inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};可以对部
4、分元素赋初值例如:inta[3][4]={{1},{0,6},{0,0,11}};2.数组作为函数参数数组元素作实参,与单个变量一样。数组名作参数,形、实参数都应是数组名,类型要一样,传送的是数组首地址。对形参数组的改变会直接影响到实参数组。数组元素和数组名都可作为函数参数来进行数据传递和共享。#includevoidRowSum(intA[][4],intnrow)//算A每行元素之和,nrow为行数{for(inti=0;i5、]+=A[i][j];}voidmain(){intTable[3][4]={{1,2,3,4},{2,3,4,5},{3,4,5,6}};for(inti=0;i<3;i++){for(intj=0;j<4;j++)cout<
6、明:<类名><数组名>[下标表达式]...访问:数组名[下标].公有成员名例如:TDatedates[7];TDatedate[3][5];对象数组初始化数组中每一个元素对象被创建时,系统都会调用类构造函数初始化该对象。通过初始化列表赋值。例:pointa[2]={Point(1,2),Point(3,4)};如果没有为数组元素指定初始值,数组元素便使用默认值初始化(调用默认构造函数)。例:Pointa[2]={Point(1,2)};对象数组赋赋值a[0]=Point(1,2);a[1]=Point(3,4);当数组中
7、每一个元素对象被删除时,系统都要调用一次析构函数来完成扫尾工作。对象数组例//Point.h#ifndef_POINT_H#define_POINT_HclassPoint{public:Point();Point(intx,inty);//构造函数重载~Point();voidmove(intnewX,intnewY);intGetX()const{returnx;}intGetY()const{returny;}staticvoidshowCount(){cout<<"X:"<8、rivate:intx,y;};#endif对象数组例#include"Point.h"Point::Point(){x=0;y=0;cout<<"DefaultConstructorcalled."<
当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。