第六章数组、指针与字符串本章主要介绍指针、引用、数组和常量类型在类和对象方面的应用,还包括new和delete运算符的使用以及用它们对对象进行动态分配和释放。通过一些实例,进一步熟悉类和对象在编程中的应用,从而进一步理解类和对象的作用。,组成数组的对象称为该数组的元素。每个元素有n个下标的数组称为n维数组。下标下界,下标上界。例:数组intARRAY[4][3];一、数组的声明和使用数组属于自定义数据类型,使用前要声明。声明包括:1,确定数组的名称;2,确定数组元素的类型;3,确定数组的结构(数组的维数,每一维的大小等)数组类型声明的一般形式:数据类型标识符[常量表达式1][常量表达式]…例:intARRAY[3][4];注意:1,数组元素的类型由数据类型给出。2,数组的名称由标识符指定。3,数组名代表数组元素在内存中地址。4,常量表达式的类型必须是unsignedint类型。5,数组元素个数是各个下标表达式的乘积。例:intARRAY[3][4];floata[20];二、数组的使用只能对数组的各个元素进行操作。数组的元素是由下标来区分。在使用过程中需要注意:1,数组元素的下标表达式可以是任意合法的算术表达式,其结果必须为正型数。a[2*i+j];2,数组元素的下标值不得超过声明时所规定的上下界,否则运行时将出现数组越界错误。例:数组的声明和使用#include<>voidmain(){inta[10],b[10];inti;for(i=0;i<10;i++){a[i]=i*2-1;b[10-i-1]=a[i];}for(i=0;i<10;i++){cout<<“a[”<<i<<“]”<<a[i];cout<<“b[”<<i<<“]”<<b[i];}}三、数组的存储与初始化数组元素在内存中是顺序、连续存储的。数组名是数组首元素的内存首地址。一个一维数组的各元素是按下标从小到大的顺序连续存放在内存中。二维数组在内存中是按行存储,即先放第一行,再放第二行……,每行中的元素是按列下标由小到大的次序存放。多维的和二维的存储顺序类似。数组的初始化就是在声明数组时给部分或全部元素赋初值。声明数组时,可以给出数组元素的初值,如:inta[3]={1,1,1};如果将全部元素都初始化时:inta[]={1,1,1};note:上面两个语句完全等价。同时也可以只对部分元素进行初始化,下面语句:floata[5]={,,};此时,,,、数组作为函数参数数组元素和数组名都可以作为函数的参数来进行数据的传递和共享。作为参数的时候,必须要注意类型的一致。使用数组名传递数据时,传递的是地址。注意:实参数组的元素个数不应该少于形参数组的元素个数。例:使用数组名作为函数参数#include<>voidrowsum(inta[][4],intnrow){for(inti=0;i<nrow;i++){for(intj=1;j<4;j++)a[i][0]+=a[i][j];}}voidmain(void){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<<table[i][j]<<"";cout<<endl;}rowsum(table,3);
指针 字符串 来自淘豆网www.taodocs.com转载请标明出处.