//数组类型与数组指针类型 #include<stdio.h> #include<stdlib.h> #include<string.h> void main(){ printf("\n-------数组类型----------\n"); { //定义一个数组类型 typedef int Myarr[5];//定义了一个int型有5个元素的数组类型 //定义一个数组类型变量 Myarr myarr; //数组赋值 int i = 0; for (i = 0; i < 5; i++) { myarr[i] = i * 2; } //打印数组的值 for (i = 0; i < 5; i++) { printf("%d\n", myarr[i]); } } printf("\n-------数组指针类型①----------\n"); { //首先定义一个数组类型 typedef int Myarr[5]; //定义一个数组指针变量 类比: int a; int *pa; Myarr * pmyarr = NULL; //定义一个数组 Myarr a; //定义一个数组指针 pmyarr = &a; //为数组赋值 int i = 0; for (i = 0; i < 5; i++) { (*pmyarr)[i] = i + 3; } //打印数组 for (i = 0; i < 5; i++) { printf("%d\n", (*pmyarr)[i]); } } printf("\n-------数组指针类型②----------\n"); { //定义一个数组指针类型 typedef int(*PArrType)[5]; //定义数组指针变量 PArrType parr = NULL; int a[5] = { 0 }; parr = &a; //为数组赋值 int i = 0; for (i = 0; i < 5; i++) { (*parr)[i] = i + 5; } //打印数组 for (i = 0; i < 5; i++) { printf("%d\n", (*parr)[i]); } } printf("\n-------数组指针类型③----------\n"); { //直接定义数组指针变量 int(*parr)[5]; int a[5] = { 0 }; parr = &a; //为数组赋值 int i = 0; for (i = 0; i < 5; i++) { (*parr)[i] = i + 5; } //打印数组 for (i = 0; i < 5; i++) { printf("%d\n", (*parr)[i]); } } system("pause"); }
时间: 2024-11-06 09:28:30