hace tiempo que no programo en C y me esta dando problemas algo tan basico como leer un archivo.
El archivo se ubica en el mismo directorio donde tengo el ejecutable del programa, con lo que no tengo que añadir rutas, y el nombre de este fichero es root.txt
El problema viene cuando intento leer las lineas del fichero... al mostrarlo por la linea de comandos me sale froot=<null>, y controot sale un codigo alfanumerico, cada vez uno, totalmente aleatorio (a mi parecer)
es mas, me deberia salir al menos en la misma ejecucion del programa el contenido de las dos lineas que leo distinto, pero no, en cada ejecucion controot vale lo mismo en las dos lineas (y aseguro que no contiene lo mismo en el txt.)
Código:
gracias FILE *f; char *froot; char *root; char controot[255]; char nombre[255]; root="root.txt"; strcpy(nombre, root); f = fopen(nombre, "r"); if (f == NULL) { printf("Error al tratar de abrir el archivo %s",nombre); return EXIT_FAILURE; } else{printf("Abre root");} froot=fgets(controot,100,f); printf("\nTras leer root, contenido froot: %s y controot: %s \n", froot, controot);//controot); froot=fgets(controot,100,f); printf("\nTras leer root2, contenido froot: %s y controot: %s \n", froot, controot);