c语言指针数组和数组指针

#include<stdio.h>
#include<iostream>
using namespace std;
int main(){
    int a[2][3],*p[3]; //指针数组,存放的是int类型的
    int cnt=1;
    for(int i=0;i<2;i++)
        for(int j=0;j<3;j++)
            a[i][j]=cnt++;
    cout<<a<<endl;
    cout<<a[0]<<endl;
    cout<<a[0][0]<<endl;
    int (*q)[3];//数组指针,存放的是一个一维数组的指针变量
    q=a; 
    //二维数组的数组名 a 指向一维数组 a[0]的首地址,虽然值和 a[0]相同,但是类型不同
    p[0]=a[0];
    cout<<q<<endl;
    cout<<p[0]<<endl;
}

相关推荐