C语言基础学习8:指针数组
一个数组,若其元素均为指针类型数据,称为指针数组,指针数组中的每一个元素都相当于一个指针变量。
一维指针数组的定义形式为:
类型名 *数组名[数组长度];
例如:int *p[4];
[]的优先级比*高,因此p先与[4]结合,形成p[4]形式,这是数组形式,然后再与p前面的"*"结合,"*"表示此数组是指针类型的,每个数组元素都可指向一个整型变量。
为什么要用到指针数组呢?
因为它比较适合于用来指向若干个字符串,使得字符串处理更加灵活。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #include <stdio.h> 2 #include <string.h> 3 void sort(char *name[], int n); 4 void print(char *name[], int n); 5 void sort(char *name[], int n) 6 { 7 char *temp; 8 int i,j,k; 9 for(i=0;i<n-1;i++) 10 { 11 k = i; 12 for(j=i+1;j<n;j++) 13 { 14 if(strcmp(name[k],name[j])>0) 15 k = j; 16 } 17 18 if(k!=i) 19 { 20 temp = name[i]; 21 name[i] = name[k]; 22 name[k] = temp; 23 } 24 } 25 } 26 void print(char *name[], int n) 27 { 28 int i; 29 for(i=0;i<n;i++) 30 printf("%s\n",name[i]); 31 } 32 void main() 33 { 34 char *name[] = {"Follow me","Basic","Great Wall","FORTRAN","Computer design"}; 35 int n = 5; 36 sort(name,n); 37 print(name,n); 38 }
posted on 2014-07-20 14:51 Iambitiousman 阅读(182) 评论(0) 编辑 收藏 举报