数组名表示着数组首元素的首地址(两个情况例外)
- sizeof(数组名),计算整个数组大小,sizeof内部单独放一个数组名,数组名表示
整个数组
- &数组名,取出的是
数组的首地址
#include <stdio.h>
int main(){
/*五个元素*/
int arr[] = { 1, 2, 3, 4, 5 };
printf("数组首元素首地址:\n");
printf("arr = %p\n", arr);
printf("&arr[0] = %p\n", &arr[0]);
printf("\n");
printf("数组首元素:\n");
printf("*arr = %d\n", *arr);
printf("arr[0] = %d\n", arr[0]);
printf("\n");
printf("数组长度:\n");
printf("arr_byte = %d\n", sizeof(arr));
printf("\n");
printf("arr = %p\n", arr);
printf("arr + 1 = %p\n", arr + 1);
printf("&arr[0] + 1 = %p\n", &arr[0] + 1);
printf("\n");
printf("数组首地址:\n");
printf("&arr = %p\n", &arr);
printf("数组尾地址:\n");
printf("&arr + 1 = %p\n", &arr + 1);
printf("\n");
printf("&arr[0] = &arr[0] + 0 = arr + 0 = %p\n", &arr[0]);
printf("&arr[1] = &arr[0] + 1 = arr + 1 = %p\n", &arr[1]);
printf("&arr[2] = &arr[0] + 2 = arr + 2 = %p\n", &arr[2]);
printf("&arr[3] = &arr[0] + 3 = arr + 3 = %p\n", &arr[3]);
printf("&arr[4] = &arr[0] + 4 = arr + 4 = %p\n", &arr[4]);
printf("\n");
return 0;
}
提示:本文为我个人学习笔记,皆纯手爪书写,如有错误请指教,转载请注明出处。