码迷,mamicode.com
首页 > 编程语言 > 详细

(二)c语言之数组详解

时间:2020-06-09 20:24:10      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:不同   语言   code   pre   需要   printf   color   print   style   

数组首元素区分: a, &a, a[0]

(1)  a 作为数组名,代表数组首元素地址;第二个元素地址为a+1, 第n个元素地址为a+n

(2)  由上可得,数组的元素值;  首元素值*a 相当于 a[0] ;  第二个元素值*(a+1) 相当于a[1],第n个元素值为*(a+n) 相当于 a[n];

(3)  由上可得,数组的首元素地址也可以写为 &a[0] 相当于 a ; 第二个元素地址为&a[1] 相当于 a+1 , 第n个元素地址为 &a[n]  相当于 a+n;

(4) &a 作为数组地址,不同于以上,需要用取地址符&才能得到,且取的是整个数组的地址,&a+1表示指向整个数组的最后面的位置;

(5) &(a+1) 非法语句

#include <stdio.h>

int main()
{       
        int a[8] = {0};
        printf("a    数组首地址:%p\n", a);
        printf("&a[0]数组首地址:%p\n", &a[0]);
        printf("&a   数组首地址:%p\n", &a);
        printf("------------------\n\n");

        printf("a+1    数组第二个元素地址:%p\n", a+1);
        printf("&a[1]  数组第二个元素地址:%p\n", &a[1]);
        printf("&a+1   数组最后一个位置:%p\n", &a+1);
        printf("------------------\n\n");

        printf("a+8    数组最后一个元素地址:%p\n", a+8);
        printf("&a[8]  数组最后一个元素地址:%p\n", &a[8]);
        printf("&a+1   数组最后一个位置:%p\n", &a+1);
        
}

a 数组首地址:0x7ffdd2b194f0
&a[0]数组首地址:0x7ffdd2b194f0
&a 数组首地址:0x7ffdd2b194f0
------------------


a+1 数组第二个元素地址:0x7ffdd2b194f4
&a[1] 数组第二个元素地址:0x7ffdd2b194f4
&a+1 数组最后一个位置:0x7ffdd2b19510
------------------


a+8 数组最后一个元素地址:0x7ffdd2b19510
&a[8] 数组最后一个元素地址:0x7ffdd2b19510
&a+1 数组最后一个位置:0x7ffdd2b19510

 

 

(二)c语言之数组详解

标签:不同   语言   code   pre   需要   printf   color   print   style   

原文地址:https://www.cnblogs.com/oytt/p/13080197.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!