存放字符串的指针数组相关应用
2017-11-13 22:57
239 查看
字符指针数组的原地排序
#include "stdafx.h" #include <string.h> //冒泡法排序 void popSort(int* p, int n); int _tmain(int argc, _TCHAR* argv[]) { //char* array[10];//指针数组 放地址的(数组中的各个元素都是字符指针) char* name[] = { "IBM", "Apple", "Oracle", "MicroSoft", "Google", "Facebook", "SpaceX", "Intel" }; for (int i = 0; i < sizeof(name) / sizeof(name[0]); i++) printf("%s\n", name[i]); //int array[10] = { 8, 88, 7, 567, 768, 5, 78, 45, 77, 122 }; //popSort(array, 10); //for (int i = 0; i < 10; i++) //{ // printf("%d\n", array[i]); //} printf("========================================\n"); //原地排序 int size = sizeof(name) / sizeof(name[0]); for (int i = 0; i<size - 1; i++) { for (int j = 0; j<size - 1 - i; j++) { if (strcmp(name[j], name[j + 1])>0) //相当与比较这俩地址下的字符串的大小 { //调整的只是 数组中 存储字符串地址元素的位置 name[j] = (char*)((int)name[j] ^ (int)name[j + 1]); name[j+1] = (char*)((int)name[j] ^ (int)name[j + 1]); name[j] = (char*)((int)name[j] ^ (int)name[j + 1]); }//异或运算(带^的运算) 必须是整型int 所以第一次强转 } //name为字符指针型数组,需要char*进行第二次强转 } for (int i = 0; i<sizeof(name) / sizeof(name[0]); i++) printf("%s\n", name[i]); return 0; } void popSort(int* p, int n) //实现 { for (int i = 0; i < n - 1; i++) { for (int j = 0; j < n - 1 - i; j++) { if (p[j] > p[j + 1]) { p[j] = p[j] ^ p[j + 1]; p[j + 1] = p[j] ^ p[j + 1]; p[j] = p[j] ^ p[j + 1]; } } } }
相关文章推荐
- 用数组存放字符串和用指针存放字符串的区别
- Delphi 字符、字符串、字符数组和字符指针及其相关函数
- 输入一个字符串,将其中连续的数字作为一个整数,一次存放到另一个整型数组,设计一个函数,把指向字符串的指针和指向整数的指针作为函数形参
- C++编程入门系列之三十三(数组、指针和字符串:用字符数组存放和处理字符串)
- 深入理解字符串、数组、指针---联系与应用
- 三十二、数组、指针和字符串:字符数组存放和处理字符串
- 鸡啄米:C++编程入门系列之二十七(数组、指针和字符串:指针变量的声明、地址相关运算--“*”和“&”)
- Unix/Linux C++应用开发-C++基础概念"数组、指针和字符串"
- Day7-指针的基础详解、二维数组、数组的几种应用、字符串的简单应用.pages
- LinuxC简谈之数组、字符串与指针相关的常见错误与问题
- C++编程入门系列之二十七(数组、指针和字符串:指针变量的声明、地址相关运算--“*”和“&”)
- 合并并且排序指针数组和二维数组里面存放的字符串用函数调用的格式
- 数组、指针和字符串:指针变量的声明、地址相关运算--“*”和“&”
- 鸡啄米:C++编程入门系列之三十三(数组、指针和字符串:用字符数组存放和处理字符串)
- 关于数组与指针的应用及区别-针对字符串去左边多余的‘0’字符
- 关于C语言字符数组、字符串和指针的相关问题
- 二十七、数组、指针和字符串:指针变量的声明、地址相关运算
- 用数组存放字符串和用指针存放字符串的区别
- 内存,指针定义使用字符串相关函数数组指针
- 定义一个指针数组里面存放了3字符串,也就是数组里放了3个指针