指针数组:
数组的元素均为指针类型数组,则称为指针数组。指针数组的每个元素都是一个指针数据。
类型表示符 * 数组名[数组元素个数];
在定义中,“数组名[数组元素个数]”先组成一个说部分,表示一个一维数组及其元素个数,“类型表示符 *”则说明数组中每个元素都是指针类型。类如:
int * ip[10];
char * cp[5];
这里定义了两个指针数组,ip是整型数组指针,cp是字符型指针数组
指针数组也可以在这里进行初始化,例如:
char c[4][10]={"a","h","k","t"};
char *str[5]={"a","h","k","t","r"};
int x,y,z, * ip[3]={&x,&y,&z};
int a[2][3],*p[2]={a[0],a[1]};
一般情况之下,运用指针的目的是操作目的变量,使得对目的变量的操作变得灵活并能提高运行效率。
# include<stdio.h>
int main()
{
char *p[2]={"asd","fghg"};
printf("%c\n",*(p[0]+1));//s
printf("%c\n",*p[0]);//a
printf("%c\n",*p[1]);//f
printf("%c\n",*p[0]+1);//b
printf("%s\n",p[0]);//asd
printf("%s\n",p[1]);//fghg
return 0;
}
输出的结果为:
数组指针待续.......