我不知道为什么文件指针会从文件中读取额外的一行,特别是最后一行,这里是代码:
FILE *fp ;
fp = fopen ("mac_ip.txt", "r") ;
int mac;
char *ip = (char *) malloc(15);
while(!feof(fp)){
fscanf(fp,"%i",&mac);
fscanf(fp,"%s",ip);
printf("MAC: %i\n",mac);
printf("IP: %s\n",ip);
}
该文件正好有 20 行,但第 20 行打印了两次。
哪个是错误?
提前致谢。