帮忙看下错的原因是什么,谢谢
使用c++:有5个字符串,要求对它们按由小到大的顺序排列,用string方法因为刚开始学,还不是很熟练,希望大家能帮我看一下,谢谢!!!!
#include <iostream>
#include <string>
using namespace std;
void sort(string s[5])
{
string *p1;
int i;
p1=s;
for(i=0;i<4;i++)
{
if(p1[i]>p1[i+1])
{
p1=s[i];//这里为什么不行,原理是什么?
s[i]=s[i+1];
s[i+1]=p1;
}
}
for(i=0;i<5;i++)
cout<<s[5]<<endl;
}
int main()
{
string s[5];
int i;
for(i=0;i<5;i++)
cin>>s[5];
sort(s);
return 0;
}