[讨论][求助]syntax to use stl sort() on char arrays
#include <cstring>
#include <algorithm>
#include <iostream>
using namespace std;
struct cmp
{
//Return true if s1 < s2; otherwise, return false.
bool operator()(const char *s1, const char * s2)
{
return strcmp(s1, s2) < 0;
}
};
int main(int argc, char* argv[])
{
int i;
sort(argv, argv + argc, cmp());
for (i = 0; i < argc; ++i)
{
cout << argv[i] << endl;
}
char s[][6] = {"sun", "moon", "earth"};
/**
need help here: sort char arrays. I cannot get the syntax working.
Please suggest a way to call sort() as simple as possible, including writing a new
predictor for sort().
*/
// sort(s, s + 3);
for (i = 0; i < 3; ++i)
{
cout << s[i] << endl;
}
return 0;
}
[此贴子已经被作者于2007-9-22 1:56:00编辑过]