指针和下标的关系

一维数组名是个指针常量
                    它存放的是一维数组第一个元素的地址

# include <stdio.h>

int main(void)
{
    int a[5]; //a是数组名  5是数组元素的个数 元素就是变量  a[0]  -- a[4]
//    int a[3][4]; //3行4列 a[0][0]是第一个元素 a[i][j]第i+1行j+1列
    int b[5];
    
    //a = b;//error a是常量
    printf("%#X
", &a[0]);
    printf("%#X
", a);

    return 0;
}
/*
    在Vc++6.0中的输出结果是:
--------------
0X12FF6C
0X12FF6C
Press any key to continue
--------------
    总结:
        一维数组名
                    一维数组名是个指针常量
                    它存放的是一维数组第一个元素的地址

*/

 指针和下标的关系

# include <stdio.h>

int main(void)
{
    int a[5] = {1,2,3,4,5};
    int i;

    for (i=0; i<5; ++i)
        printf("%d
", a[i]);  //a[i] == *(a+i) 

    return 0;
}

 demo2.

# include <stdio.h>

int main(void)
{
    int a[5] = { 1,2,3,4,5};

    for( int i = 0 ; i < 5 ; i++ ){
        printf("%d 
" , a[i]);
    }

    for(i = 0 ; i < 5 ; i++ ){
        printf("%d 
" , *(a+i));
    }


return 0 ;
}
原文地址:https://www.cnblogs.com/mjorcen/p/3813240.html