Dev - C++ - Ayuda con ficheros

 
Vista:
sin imagen de perfil

Ayuda con ficheros

Publicado por Andres (1 intervención) el 01/03/2023 03:20:59
Que tal! Necesito ayuda, tengo este programa simple que es para ingresar datos en un archivo, mi problema es que al ingresar el dato, y abrir el archivo, deja el mensaje pegado, necesito saber si alguien me guia para hacer que el texto quede en una linea debajo

#include <stdio.h>
/* Incorpora caracteres.
El programa agrega caracteres al archivo libro.txt. */
void main(void)
{
char p1;
FILE *ar;
ar = fopen("libro.txt", "a");
/* Se abre el archivo con la opción para incorporar caracteres. */
if (ar != NULL)
{
while ((p1 = getchar()) != '\n')
fputc(p1, ar);
fclose(ar);
}
else
printf("No se puede abrir el archivo");

}
Sin-titulo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 417
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con ficheros

Publicado por Thanatos (199 intervenciones) el 01/03/2023 05:45:30
La condición de la sentencia while es la que está haciendo que no se escriba el salto de línea en el archivo:

1
while ((p1 = getchar()) != '\n')

Cuando p1 es igual al carácter salto de línea '\n', la iteración termina, y el salto de línea no llega a escribirse en el archivo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar