二位数组与指针

#include<stdio.h>
#include<iostream>
using namespace std;

void disparry(int a[2][3])
{
printf("\n%d,%d,%d",a[0][0],a[0][1],a[0][2]);
}
int  main(void)
{
    int arr[2][3]={{2,3,1},
    {23,45,6}};
    //c是一个指针,指向的元素int[3],即arr的行元素 
    int (*c)[3]=arr;
    int *p;
    p =(int *)arr;
    //p指向arr[0][0],也可以说是arr[0] 
    cout<<p<<endl<<arr[0]<<endl<<&arr[0][0]<<endl; 
    cout<<endl<<*p<<endl;
    disparry((int (*)[3])p);
    disparry(c);
    return 0;
}

参考http://blog.chinaunix.net/uid-2595338-id-2139571.html

看数据结构与算法发现二维数组与二维指针还有点问题,补习了下,

  int (*c)[3]
posted @ 2015-04-11 08:57  ashen~  阅读(236)  评论(0编辑  收藏  举报