strtok不适用于非const char参数

时间:2016-11-07 19:04:24

标签: c strtok char-pointer

我有这个功能,用一个句子来反转每个单词。 我必须就地修改值,返回值应为Null。 我无法修改主要内容:

int main()
{
    char *string= "hello";
    reverser(string);
    printf("%s\n", string);
}

在我的reverser函数中,我使用需要strtok的{​​{1}}

non-const char*

即使使用strdup它也不起作用,我无法弄清楚为什么...... 有人有任何建议让它起作用吗? 谢谢

1 个答案:

答案 0 :(得分:0)

char *string= "hello";替换为char string[] = "hello";

否则string将无法修改,反转功能将不可能。 (假设它总是返回NULL)