指针数组
本质是数组 只是每个元素的类型是指针。
图示
代码示例
#include <stdio.h>
int main() {
int num1 = 10;
int num2 = 20;
int num3 = 30;
int num4 = 40;
int *arr[4] = {
&num1, &num2,&num3,&num4};
int n = sizeof(arr) / sizeof(arr[0]);
for (size_t i = 0; i < n; i++)
{
printf("%d ", *arr[i]);
}
return 0;
}
一维数组
代码示例
#include <stdio.h>
int main() {
// 1.定义数组
int arr[5] = {
10,20,30,40,50 };
//arr作为类型
printf("sizeof(arr) = %d\n",sizeof(arr));//数组的总大小
//arr作为地址 代表首元素的地址
printf("arr = %u\n", arr);//int *
printf("arr+1 = %u\n", arr+1);
printf("arr[1] = %d\n", arr[1]);//20
printf("*(arr+1) = %d\n", *(arr+1));//20
printf("---------------------\n"