1.指针数组
int *a[5] or char *str[5]
指针数组=====主要用来操作字符串数组,通过将指针数组的每个元素存放字符串的首地址实现对多个字符串的操作
二维数组 =====主要用来存储字符串数组,通过每行存储一个字符串,多行存储多个字符串所组成的数组
2.指针和二维数组的关系
二维数组的数组名是指向数组第一行元素的数组指针
访问二维数组的第m行和第n列的方式:
a[m][n] ==*(a[m]+n)== *(*(a+m)+n) == *(p+m*N+n) == *(*(q+m)+n) ==*(q[m]+n)==q[m][n]
二维字符串传参char str[5][32] = {0};
int Fun(char (*pstr)[32], int len);
二维数组传参int a[2][3] = {0};
int Fun(int (*parray)[3], int len);
3.二级指针
传参char *pstr[5] = {"hello", "world", "how", "are", "you"};
int Fun(char **ppstr, int len);
1.现有二维数组 char str[5][32] = {"hello", "world", "how", "are", "you"};
封装函数实现对所有字符串的排序
封装函数实现对所有字符串的打印
2.现有指针数组 char *pstr[5] = {"hello", "world", "how", "are", "you"};
封装函数实现对所有字符串的排序
封装函数实现对所有字符串的打印