我有这个功能,可以取一个句子并反转每个单词。我必须就地修改值,返回值应该为 Null。我无法修改主要内容:
int main()
{
char *string= "hello";
reverser(string);
printf("%s\n", string);
}
在我的reverser
功能中,我使用strtok
需要non-const char*
char* reverser(char *sentence) {
char *copy = strdup(sentence);
char *string;
int i, j;
for(j = 0; (string = strtok(j ? NULL : copy, " ")) != NULL; j++)
for(i = strlen(string) - 1; i >= 0; --i, j++)
sentence[j] = string[i];
return NULL;
}
即使使用 strdup 它也不起作用,我不知道为什么......有人有什么建议让它起作用吗?谢谢你