0

以下のコードを書いたのですが、単語をメモリに確保するとNULLになってしまいます!次のコードのどこに問題がありますか? 私はライトを言葉に分割する理由をこれに書くことを余儀なくされました:(助けてください

void strSplit(const char *line, char *words[]){

    char *word = new char[81];
    int index = 0;
    int s = strlen(line);
    for(int i = 0; i < s; i++)
    {
        if(line[i] != ' ' && line[i] != ',' && line[i] != ';')
        {
            if(word == NULL)
            {
                strcpy(word, (line[i] + "\0"));
            }
            else 
            {
                strcat(word, (line[i] + "\0"));
            }
        }
        else
        {
            if(word != NULL){
                strcpy(words[index], word);
                puts(words[index]);
                index++;
                puts(word);
                word = NULL;
            }
        }

    }
}
4

1 に答える 1

3
if (word == NULL) {
    strcpy(word, stuff);
}

これは自殺です。

于 2013-02-23T10:28:33.677 に答える