【发布时间】:2013-06-23 11:33:31
【问题描述】:
我有以下代码:
int main(){
char sentence[] = "my name is john";
int i=0;
char ch[50];
for (char* word = strtok(sentence," "); word != NULL; word = strtok(NULL, " "))
{
// put word into array
// *ch=word;
ch[i]=word;
printf("%s \n",ch[i]);
i++;
//Above commeted part does not work, how to put word into character array ch
}
return 0;
}
我收到错误:错误:invalid conversion from ‘char*’ to ‘char’ [-fpermissive]
我想将每个单词存储到数组中,有人可以帮忙吗?
【问题讨论】:
-
strcpy是您所需要的。或者,从你的使用方式来看,可能是char *ch[50];? -
你有四个单词,但只有一个数组。因此,当您说要将每个单词“存储到字符数组中”时,您到底是什么意思?
-
是的 strcpy 在这里会有所帮助,我使用 strcpy(ch[i], word);这也给出了同样的错误
-
实际上我想将每个单词存储为数组元素并传递整个数组以匹配单词!
-
@abelenky:它给出了分段错误(核心转储)错误