[求助]有关C++用函数对数组进行排序.
说明一个可存放10个字符串的字符串数组,各字符串由用户输入,数组中每个元素的大小根据用户输入串实际长度动态地确定.编写一个函数对该数组进行排序.排序时无须交换两个串,只交换指向它们的指针即可.这个题目我做不出,那位可以大帮帮忙,试一下,对指针实在是有很多不懂,谢谢!
#include<iostream>
#include<string>
using namespace std;
void main()
{
string *p[2],*q;
string S[2];//为简单这里只用2个元素
for(int i=0;i<2;i++)
{
cout<<"请输入字符串"<<endl;
cin>>S[i];
p[i]=new string[S[i].length()];
*p[i]=S[i];
}
//下面是排序(由小到大),如果是S[10],你可以用冒泡排序等排序方法
if(S[0].length()>S[1].length())
{
q=p[0];p[0]=p[1];p[1]=q;//****对指针的操作
}
cout<<"排序后"<<*p[0]<<" "<<*p[1]<<endl;
}