指针数组
2017-11-30 21:35
14 查看
指针数组
一、目录
什么是指针数组,怎么声明?实例
二、什么是指针数组,怎么声明?
指针数组实质上是个数组,不过该数组的每个元素都是指针变量,还必须是同一类型的指针。声明: 数据类型 * 数组名 [ 下标表达式 ];
——下标表达式: 数组元素的个数
——数据类型: 每个元素指针的类型
——数组名: 指针数组的名字,也是这个数组的首地址
—例如:一个int类型的指针数组 pa,共3个元素,每个元素都是一个指向int类型的指针
int *pa[3];
声明后,必须为每个指针元素赋初值
三、实例
例题:利用指针数组输出单位矩阵#include<iostream> using namespace std; int main(){ int line1[]={1,0,0};//定义数组,矩阵第一行 int line2[]={0,1,0};//定义数组,矩阵第二行 int line3[]={0,0,1};//定义数组,矩阵第三行 // 定义整型指针数组并初始化 int *pLine[3]={line1,line2,line3}; cout<<"Matrix test: "<<endl; for(int i=0;i<3;i++){ for(int j=0;i<3;j++) cout<<pLine[i][j]<<" "; cout<<endl; } return 0; }
注意:pLine[i][j]与*(pLine[i]+j)等价,在此题内形式上与访问二维数组相似,过程不太一样