再回首(二):对malloc分配内存方式的内容的两种排序方式
来源:互联网 发布:程序员求职成功 编辑:程序博客网 时间:2024/05/22 02:14
//强化指针数组char* a[30] 和 数组指针char (*a)[30]//()[]优先级 char *a() //函数名称{return NULL;}char (*a2)(); //是一个指针变量。。。。。。分配四个自己内存char **getMem(int count){int i = 0;char **tmp = (char **)malloc((count+1)*sizeof(char *) );for (i=0; i<count; i++){tmp[i] = (char *)malloc(100);}tmp[count] = NULL; return tmp;}void sortArray(char **myArray){int i = 0, j = 0;char *tmp;for (i=0; myArray[i] != NULL; i++){for (j=i+1; myArray[j] != NULL; j++){if (strcmp(myArray[i], myArray[j])){tmp = myArray[i]; //这个地方交换的是指针变量myArray[i] = myArray[j];myArray[j] = tmp;}}}}void sortArray02(char **myArray){int i = 0, j = 0;char tmp[200];for (i=0; myArray[i]!=NULL; i++){for (j=i+1; myArray[j]!=NULL; j++){if (strcmp(myArray[i], myArray[j]) > 0){strcpy(tmp, myArray[i]);strcpy(myArray[i], myArray[j]);strcpy(myArray[j], tmp); //交换是buf的内容}}}}void printfArray(char **myArray){int i = 0, j = 0;for (i=0; myArray[i] != NULL; i++){printf("%s \n", myArray[i]);}}void main(){char **pArray = NULL;pArray = getMem(3);strcpy(pArray[0], "bbbbb");strcpy(pArray[1], "aaaa");strcpy(pArray[2], "cccc");printf("排序之前\n");printfArray(pArray);//sortArray(pArray, 3);sortArray02(pArray); printf("排序之后\n");printfArray(pArray ,3);system("pause");}
由以上程序可知:
一、 由于malloc分配内存实在堆中分配的内存空间 ,可以修改内存区域的内容,因此 对内存区域的内容的交换既可以采用地址的交换,又可以采取内容的交换。
二、二级指针作为函数参数可以改变传入实参的一级指针。
0 0
- 再回首(二):对malloc分配内存方式的内容的两种排序方式
- malloc两种内存获取方式的区别
- 不同内存分配方式的区别 VirtualAlloc HeapAlloc malloc new
- 编译器对变量的内存分配方式
- 使用malloc()结果的两种方式
- 内存的分配方式
- 内存的分配方式
- 内存分配的方式
- 内存的分配方式
- 内存的分配方式
- 内存的分配方式
- 内存的分配方式
- 内存的分配方式
- Collections.sort方法对list排序的两种方式
- Collections.sort方法对list排序的两种方式
- Collections.sort( )方法对list排序的两种方式
- Collections.sort方法对list的两种排序方式
- TreeSet对元素进行排序实现的两种方式
- flash_z-index
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
- bvprdzhdnvvdxj
- SharedPreferences保存用户信息
- Hive的数据存储
- 再回首(二):对malloc分配内存方式的内容的两种排序方式
- Android APK文件解析
- winform快速开发平台->让有限的资源创造无限的价值!
- 定位cpu占用过高的线程和对应的方法
- JS获取本周、本季度、本月、上月的开端日期、停止日期
- Android APK文件解析
- 使用Drozer进行安全测试(Drozer github上开源项目)
- C++ vector基础
- iOS开发 CoreAnimation