C语言数组指针

// 指针.cpp : 定义控制台应用程序的入口点。
//

#include "stdio.h"

void main()
{
    int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
    //a[i],*(a+i)和a+i,&a[i]
    printf("*a[i]为:%d\n",*a[0]);
    printf("**(a+i)为:%d\n",**(a+0));
    printf("**a为:%d\n",**a);
    printf("a为:%d,a[0]为:%d,*a为:%d,&a为:%d\n",a,a[0],*a,&a);    
    printf("***(&a)为:%d\n",***(&a));

    
    //比较a[i],&a[i],*(a+i)和a+i
    printf("-----------------------------\n");
    printf("a[i]:%d\n",a[0]); //*a[0]为1
    printf("&a[i]:%d\n",&a[0]);// **&a[0]为1,*a[0]与**&a[0]寻址级别不同
    printf("*(a+i):%d\n",*(a+0));
    printf("a+i:%d\n",a+0);
    

    //比较a[i]+j和&a[i][j]。
    printf("-----------------------------\n");
    printf("*(a[0]+2):%d\n",*(a[0]+2)); //*a[0]为1
    printf("*&a[0][2]:%d\n",*&a[0][2]);

    /*
    printf("-----------------------------\n");
    int arr[3]={1,2,3};
    printf("%d\n",*arr);*/

    /*int t=99;
    int *p=&t;
    int **q=&p;
    printf("p:%d\n",p);
    printf("q:%d\n",q);*/
}
原文地址:https://www.cnblogs.com/mxw09/p/1799021.html