我正在尝试将字符串值 (char *) 分配给 char 数组数组中的元素。我的问题是,我可以进行分配,但它将最后读取的值放入每个元素,而不是我想要的特定元素。我的代码如下所示。
int wordListIterator = 0;
int main(int argc, char **argv) {
FILE *fp = fopen(argv[1], "r");
int lineCount = 0;
char line[80];
while (fgets(line, sizeof(line), fp) != 0) {
parseLine(line, strlen(line), lineCount);
lineCount++;
}
fclose(fp);
} // end main
void parseLine(char * myLine, int stringLength, int myLineCount) {
if (isspace(myLine[1])) {
int i;
for (i = 0; i < stringLength; i++) {
Puzzle[myLineCount][i] = myLine[i];
}
} else
if (isspace(myLine[1]) == 0) {
Wordlist[wordListIterator] = myLine;
wordListIterator++;
}
}
我的输出将使 Wordlist[] 充满最后一个单词。这是一个单词搜索难题。Puzzle[][] 分配效果很好,所以我不明白我哪里出错了。