本文共 886 字,大约阅读时间需要 2 分钟。
在c语言中,数组指针,就是一个指针,指向一个数组。定义数组指针有3种方式。
(1) 通过自定义数组类型来定义
typedef int(MYINT)[5];
MYINT *p;
//定义数组指针的第一种类型, int a[5]; typedef int(MYINT)[5]; //定义数组类型 MYINT* p; //定义一个指针,指向一个数组,即数组指针 p = &a; for (int i = 0; i < 5; i++) { (*p)[i] = i; } for (int i = 0; i < 5; i++) { printf("%d ", (*p)[i]); } printf("\n");
(2) 通过自定义数组指针类型来定义
typedef int(*MYPOINTER)[5];
MYPOINTER myPoint;
//定义数组指针的第二种类型 int b[5]; typedef int(*MYPOINT)[5]; //定义数组指针类型,意思是这个一个指针,指向一个数组,这个数组存储的元素类型是int, 大小为5。 MYPOINT p1; p1 = &b; for (int i = 0; i < 5; i++) { (*p1)[i] = i * 2; } for (int i = 0; i<5; i++) { printf("%d ", (*p1)[i]); } printf("\n");
(3)直接定义
int (*pointer)[n];
pointer 为数组指针变量名
type 为指向的数组的类型
n 为指向的数组的大小
//定义数组指针的第三种的方法,直接定义 int c[5]; int(*pointer)[5]; pointer = &c; for (int i = 0; i < 5; i++) { (*pointer)[i] = i * 3; } for (int i = 0; i < 5; i++) { printf("%d ", (*pointer)[i]); } printf("\n");
转载地址:http://mmzmi.baihongyu.com/