这是我的结构:
struct Data{
char *buffer[MAXBUFF];
int bufferSize;
};
这就是我调用函数 searchInFile 的方式:
searchInFile(logFile, outFile, &dat);
这是 searchInFile 函数本身:
void searchInFile(FILE *logFile, FILE *outFile, struct Data *dat){
FILE *srcFile = fopen("src.txt", "r");
if(!srcFile){
printf("Nepavyko atidaryti \"src.txt\" failo.\n");
fprintf(logFile, "Nepavyko atidaryti \"src.txt\" failo.\n");
fclose(srcFile);
return;
} else {
fprintf(logFile, "Failas \"src.txt\" atidarytas sekmingai.\n");
}
while(!feof(srcFile)){
fgets((*dat).buffer, MAXBUFF, srcFile);
printf("%s", dat->buffer);
}
fclose(srcFile);
}
我想要做的是将字符扫描到结构中定义的缓冲区。我收到警告,说我从不兼容的指针类型传递了“fgets”的参数。如何正确扫描?