我需要您就如何改进此代码或我是否必须改进此代码提出意见。 它正在读取一个输入文件并将其解析为单词,然后将它们保存为一些动态结构,如链表或树。 我想知道它是否有效或是否更有效。
if index < facts.count && index > 0 {
index -= 1
} else {
index = facts.count - 1
}
期待您的意见。谢谢。
答案 0 :(得分:0)
从文件中读取一行并存储在数组中,然后从开始读取数组并将其标记化!!!
为什么要直接对每个单词进行标记?附:如果必须以不同方式处理不同行的单词,可以通过分隔case '\n':
char *word=malloc(sizeof(char)*maxSize);
int i=0;
while(1){
switch(c=fgetc(stdin)){
case ',': case '(': case ')': case '?': case '/':
case '|': case '.': case '!': case '-': case '\n':
case ':': case ';': case '^': case '[': case']': case ' ':
word[i]='\0';
//call your function here
i=0;
break;
case EOF:
word[i]='\0'
if(i>0);
//call your function
//file is read completely
return;
default:
test[i++]=c;
}
if(i==maxSize); //reallocate
}