Tengo una duda respecto a esto, estuve haciendo un programa para ordenar registros en un archivo de texto de acceso secuencial, y pues para eso tenía que leer y escribir registros constantemente, pero tenía problemas en la lectura del archivo, ya que a veces leía 2 veces el mismo registro.
si pongo varias instrucciones fprintf, los registros se almacenan de forma correcta, igual si pongo varias instrucciones fscanf se leen bien, eso me dice que el apuntador de posición de archivo se desplaza correctamente, pero si hago algo como lo siguiente:
Código C:
El problema aquí es que el segundo registro no lo lee, y pues supuse que al momento de hacer la primera lectura, el apuntador de posición se desplazaria a la siguiente posición para almacenar el siguiente registro.Ver original
if((ptr = (fopen("texto2.txt","w+"))) != NULL){ ///abre un archivo de texto para lectura y escritura }
Pero por lo menos pienso yo que debería de sobreescribir entonces al primer registro.
Mi pregunta es esa, ya he hallado la forma de guardar los 2 registros, pero en el programa anterior nose que pasa con el segundo registro, ¿porque no se ejecuta y reemplaza al registro anterior?
Gracias...