将字符串拆分成单词的数组

时间:2011-08-09 08:50:32

标签: c arrays string

我正在研究一个C函数来将一串字母分成一个数组,但它会保留seg错误,我不明白为什么。

我已经通过DDD运行了几次,但没有多大帮助。

char* stringToArray(const char *desc)
{
    int i = 0;
    int j = 0;
    char *array[5][10] = {{0}};/*5 words, 10 chars each*/

    while (desc[i] != '\0')
    {
        if (desc[i] != ' ') {
            *array[j][i] = desc[i]; /*seg faults here*/
        }

        else {
            j++;
        }
        i++;
    }
    return **array;
}

非常感谢任何帮助 感谢。

1 个答案:

答案 0 :(得分:1)

您需要使数组静态或为其分配一些内存 - 返回指向本地数组的指针将不起作用。

您也可以查看strtok。