问题描述
我想按单词标记一个字符串(使用“”作为分隔符),并将单词存储在另一个数组中(如果它是唯一的)。 但是,我得到的行为是这些词变得不确定。我在这里做什么错了?
int wordCount = 0;
char wordArray[wordCount+1][256];
int wordCountArray[wordCount+1];
char storedInputTemp[strlen(storedInput)];
strcpy(storedInputTemp,storedInput);
const char s[2] = " ";
char *token;
token = strtok(storedInputTemp,s);
while( token != NULL ) {
//check if is recorded
int duplicate = 0;
for(int j = 0; j < wordCount+1; ++j){
if(strcmp(token,wordArray[j]) == 0){
++wordCountArray[j];
++duplicate;
break;
}
}
//UNRECORDED / not duplicate
if(duplicate < 1){
printf("UNIQEUE WORD: ");
char wordcopy[strlen(token)+1];
strcpy(wordcopy,token);
strcpy(wordArray[wordCount],wordcopy);
wordCountArray[wordCount] = 1;
printf("%s\n",wordArray[wordCount]);
for(int i = 0; i < wordCount+1; ++i){
printf("#%d: %s\n",i,wordArray[i]);
}
++wordCount;
}
//end sequence
token = strtok(NULL,s);
}```
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)