(二)c语言之数组详解
数组首元素区分: 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
相关推荐
lpkwxl 2020-06-17
chensen 2020-11-14
拉斯厄尔高福 2020-11-04
杜倩 2020-10-29
拉斯厄尔高福 2020-10-19
嵌入式资讯精选 2020-10-15
zhaochen00 2020-10-13
penkgao 2020-10-13
yiyilanmei 2020-10-05
wanshiyingg 2020-09-29
Mars的自语 2020-09-27
shenwenjie 2020-09-24
一个逗逗 2020-09-22
flycony 2020-09-13
zhaochen00 2020-08-20
Biao 2020-08-20
qingsongzdq 2020-08-19
penkgao 2020-08-17
cetrolchen 2020-08-14