我想创建一个函数,从C中的流中删除重复的字符串。字符串已经排序,所以唯一必要的步骤是检查刚才出现的字符串,以确保当前的字符串不是重复的。但是,我的尝试实现并没有给我正确的输出。事实上,我根本没有输出。这些字符串由换行符分隔。谁能告诉我我在这里失踪了什么?在C中重复的字符串检测
void dupEliminate(int file, char string[100])
{
FILE *stream;
stream = fdopen(file, "r");
char* savedString;
char* prevString;
while(!feof(stream)){
(fgets(savedString, 100, stream));
if(strcmp(savedString,prevString) != 0){
strcat(string, savedString);
strcpy(prevString,savedString);
}
'string'应该在这个函数中扮演什么角色? –
您似乎每次都会覆盖'string'到最后? –