标签:
二级指针第一种内存模型(指针数组)
指针的输入特性:在主调函数里面分配内存,在被调用函数里面使用
指针的输出特性:在被调用函数里面分配内存,主要是把运算结果甩出来
#include "stdio.h" #include "stdlib.h" #include "string.h" void main() { int i = 0, j = 0; char *tmp = NULL; char *ArrayStr[] = {"ccccc", "aaaa", "bbbb","11111"}; for (i=0; i<4; i++) { printf("%s \n", ArrayStr[i]); } //排序 for (i=0; i<4; i++) { for (j=i+1; j<4; j++) { if (strcmp(ArrayStr[i],ArrayStr[j]) > 0) { tmp = ArrayStr[i]; ArrayStr[i] = ArrayStr[j]; ArrayStr[j] = tmp; } } } for (i=0; i<4; i++) { printf("%s \n", ArrayStr[i]); } system("pause"); }
#include "stdio.h" #include "stdlib.h" #include "string.h" int printfArr(char **ArrayStr, int iNum) { int i = 0; for (i=0; i<iNum; i++) { printf("%s \n", ArrayStr[i]); } return 0; } int sortArrayStr(char **ArrayStr, int iNum) { int i = 0, j = 0; char *tmp = NULL; //排序 for (i=0; i<4; i++) { for (j=i+1; j<4; j++) { if (strcmp(ArrayStr[i],ArrayStr[j]) > 0) { tmp = ArrayStr[i]; ArrayStr[i] = ArrayStr[j]; ArrayStr[j] = tmp; } } } return 0; } //二级指针第一种内存模型 void main() { char *ArrayStr[] = {"ccccc", "aaaa", "bbbb","11111"}; printf("排序之前\n"); printfArr(ArrayStr,4); sortArrayStr(ArrayStr, 4); printf("排序之后\n"); printfArr(ArrayStr,4); system("pause"); }
一维指针数组做函数参数会退化为二级指针
标签:
原文地址:http://www.cnblogs.com/CentForever/p/4640538.html