Estoy tratando de almacenar un archivo .txt
en variables tipo char
en C, el problema es que el resultado al compilar me imprime dos veces la última línea y no entiendo la razón.
- En el archivo
.txt
tengo lo siguiente:
123.22.0.212 255.255.0.0
2.169.73.5 255.255.0.0
2.50.10.36 255.255.192.0
- Resultado al Compilar es el siguiente:
123.22.0.212 255.255.0.0
2.169.73.5 255.255.0.0
2.50.10.36 255.255.192.0
2.50.10.36 255.255.192.0
- Código en C:
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE * archivo = fopen("direcciones.txt", "rb");
if(archivo == NULL)
{
perror("Error en la apertura del archivo");
return 1;
}
/*leyendo caracter por caracter*/
char ip[12];
char mask[12];
while( feof(archivo) == 0)
{
fscanf(archivo, "%s%s", &ip, &mask);
printf("%s %s\n", ip, mask);
}
fclose(archivo);
printf("\n\nSe ha leido el archivo correctamente...");
return 0;
}