⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ex10_3.cpp

📁 《C++面对对象程序设计》的所有源代码和部分头文件
💻 CPP
字号:
// ex10_3.cpp
// sort an array of pointers to strings
#include <iostream>
#include <cstring>              //for strcmp(), etc.
using namespace std;
const int DAYS = 7;             //number of pointers in array

int main()
   {
   void bsort(char**, int);     //prototype
				//array of pointers to char
   char* arrptrs[DAYS] = { "Sunday", "Monday", "Tuesday",
			   "Wednesday", "Thursday",
			   "Friday", "Saturday"  };

   cout << "\nUnsorted:\n";
   for(int j=0; j<DAYS; j++)    //display unsorted strings
      cout << *(arrptrs+j) << endl;

   bsort(arrptrs, DAYS);        //sort the strings

   cout << "\nSorted:\n";
   for(j=0; j<DAYS; j++)        //display sorted strings
      cout << *(arrptrs+j) << endl;
   return 0;
   }
//--------------------------------------------------------------
void bsort(char** pp, int n)    //sort pointers to strings
   {
   void order(char**, char**);  //prototype
   int j, k;                    //indexes to array

   for(j=0; j<n-1; j++)         //outer loop
      for(k=j+1; k<n; k++)      //inner loop starts at outer
   order(pp+j, pp+k);           //order the pointer contents
   }
//--------------------------------------------------------------
void order(char** pp1, char** pp2)  //orders two pointers
   {                            //if string in 1st is
   if( strcmp(*pp1, *pp2) > 0)  //larger than in 2nd,
      {
      char* tempptr = *pp1;     //swap the pointers
      *pp1 = *pp2;
      *pp2 = tempptr;
      }
   }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -