我正在尝试获取仅是一些随机文本的FILE inp的内容,并对它进行排序,以创建一个表来保存每个单词,出现次数和时间。目前的错误消息是:
错误(有效)E0137表达式必须是可修改的
有人知道我在做什么错吗?
struct symbol_table
{
char word[MAX_WORD_LENGTH];
int word_length = 0;
int word_count = 0;
};
FILE* get_words(FILE* inp, char fName[MAX_WORD_LENGTH])
{
char temp, temp1[MAX_WORD_LENGTH];
bool go = true;
int i=0;
int j = 0;
symbol_table words[MAX_WORDS];
inp = fopen(fName, "r");
while(!feof)
{
temp = getc(inp);
if (isalpha(temp))
{
temp1[i++] = temp;
}
else
{
if (i == 0)continue;
i = 0;
for (int x = 0; x < j; x++)
{
if (words[x].word == temp1)
{
words[x].word_count++;
break;
}
else
{
words[j].word = temp1; //the error is here
}
}
}
}
return nullptr;
}