C++ 对字符进行排序**

C++ 对字符进行排序**,c++,C++,所以我正在为一个项目创建一个索引器,我们必须使用一个字符**来存储文件中的单词。我正在尝试对数组中的单词进行排序。以下是我迄今为止所尝试的: void Word::arrangeWords(char **&words) { char **temp=new char*[getSize()]; temp[getSize()-1]=words[getSize()-1]; for (int i=getSize()-1;i>0;i--) { comp=strcmp(temp[i]

所以我正在为一个项目创建一个索引器,我们必须使用一个字符**来存储文件中的单词。我正在尝试对数组中的单词进行排序。以下是我迄今为止所尝试的:

void Word::arrangeWords(char **&words)
{

char **temp=new char*[getSize()];

temp[getSize()-1]=words[getSize()-1];
for (int i=getSize()-1;i>0;i--)
{
    comp=strcmp(temp[i], temp[i-1]);
    if (comp<0)
    {
        temp[i]=words[i-1];
        temp[i-1]=words[i];
    }
    else
    {
        temp[i]=words[i];
    }
}
delete [] words;
words=temp;
}
void Word::arrangeWords(char**&words)
{
char**temp=new char*[getSize()];
temp[getSize()-1]=单词[getSize()-1];
对于(int i=getSize()-1;i>0;i--)
{
comp=strcmp(温度[i],温度[i-1]);

if(comp在C++中对以0结尾的字符串进行排序的最简单方法:

#include <cstring>
#include <algorithm>
void sortcstrings(const char** arr, size_t n) {
    std::sort(arr, arr+n, [](const char* a, const char* b){
        return std::strcmp(a, b)<0;});
}
#包括
#包括
无效排序字符串(常量字符**arr,大小\u t n){
排序(arr,arr+n,[](常量字符*a,常量字符*b){

返回STD::STRCMP(a,b)只使用<代码> qSoes>代码>,或者更好的是C++ <代码> STD::排序。通过使用<代码> STD::vector和Word < /C>,然后使用<代码> STD::排序(单词,开始(),单词,()),可以使你的生活变得简单很多。