指针数组:首先它是一个数组,数组的元素都是指针,数组占多少个字节由数组本身决定。它是“储存指针的数组”的简称
//===========================================
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
int printAarray(char ** pArray, int num)
{
int i = 0;
if (pArray == NULL)
{
return -1;
}
for (i=0; i<num; i++)
{
printf("%s \n", pArray[i]);
}
return 0;
}
int sortArray(char **pArray, int num)
{
char *tmp = NULL;
int i = 0, j = 0;
if (pArray == NULL)
{
return -1;
}
for (i=0; i<num; i++)
{
for (j=i+1; j<num; j++)
{
if (strcmp(pArray[i], pArray[j]) > 0)
{
//交换的是数组元素 数组元素是指针
tmp = pArray[i];
pArray[i] = pArray[j];
pArray[j] = tmp;
}
}
}
}
void main()
{
char *tmp = NULL;
int i = 0, j = 0;
//首先考虑它是一个数组,指针数组,====》只不过每一个元素是指针而已。
//[]优先级高
//打印数组 排序排序这个数组、、、、指针做函数参数
char * myArray[] = {"i", "love", "you", "so"};
printf("排序之前\n");
printAarray(myArray, 4);
sortArray(myArray, 4);
printf("排序之后\n");
printAarray(myArray, 4);
}
//=============================================
如有问题可相互探讨,可以在帖子下面留言 |
|