用指针实现的二维数组创建及赋值

来源:互联网 发布:java事务的传播特性 编辑:程序博客网 时间:2024/05/13 11:18

        用指针实现的二维数组创建及赋值

第一种:

int m = 3;

int (*p)[5] = new int[m][5];      // 可以理解为p是一个指向含有5个int型元素的型数组的指针
for (int i=0;i<m;i++){
for (int j=0;j<5;j++){
p[i][j] = i+j;
}
}
for (int i=0;i<m;i++){
for (int j=0;j<5;j++){
cout<<p[i][j]<<" ";
}
cout<<endl;
}      

第二种:
int **p;
p = new int*[3];       //创建行指针。创建三个元素的数组,每个元素指向一个int*型
for (int i=0;i<3;i++){
p[i] = new int[5];        // 必须要加上这一行,开辟空间
for (int j=0;j<5;j++){
p[i][j] = i+j;
}
}
for (int i=0;i<3;i++){
for (int j=0;j<5;j++){
cout<<p[i][j]<<" ";
}
cout<<endl;
}   
0 0