c指针模型学习:

//一级指针级数组排序 相当于一维数组
int sortArray(char *myArray, int num)
{
 for (i=0; i<num; i++)
  {
   for (j=i+1; j<num; j++)
   {
    if (strcmp(myArray[i], myArray[j]) > 0)
    {
     //交换的是数组元素 数组元素是指针
     tmp = myArray[i];
     myArray[i] = myArray[j];
     myArray[j] = tmp;
    }
   }
  }
 return 0;
}

//一级指针级数组打印
int printAarray(char *myArray, int num)
{
 for (i=0; i<4; i++)
 {
  printf("%s \n", myArray[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;
   }
  }
 }
}
//二指针级数组打印
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;
}