首页 > 解决方案 > C ++自定义字符串拆分?

问题描述

我还是 C++ 的新手;我想知道为什么我为自定义字符串拆分功能编写的代码不起作用?(它按字符而不是字符串拆分)我认为 memcpy 在第二种情况下有问题吗?

char** strsplit(const char *s, const char splitboi)
{
    const int LEN = length(s);
    int segs = 0;
    char *segstore, **out;
    for (int chrs=0; chrs<=LEN; chrs++)
    {
        if(*(s+chrs) != splitboi)
        {char* temp = chrs==0 ? (char*)"" : segstore;
            segstore = new char[chrs+1];
            memcpy(&segstore, &temp, sizeof(char*));
            segstore[chrs] = *(s+chrs);}
        else if(*(s+chrs) == splitboi)
        {char **temp = out;
            out = new char* [segs+1];
            memcpy(&out, &temp, sizeof(char**)); //something wrong with this
            out[segs] = segstore;
            segs++;}
    }

    delete segstore;
    cout << out[0] << '\n';
    return out;
}

标签: c++

解决方案


推荐阅读