Hola
Tengo una duda. Tengo que cargar una estructura con ciertos datos y luego esos datos los tengo que pasar a un archivo txt o csv.
Esto es lo que tengo hasta ahora
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define N 5
struct s_datos
{
int doc;
char nombre[50];
char pais[50];
};
typedef struct s_datos dato;
int CARGA(dato charge[N]);
void CREACION(dato charge[N],int);
int main()
{
int i=0,j=0;
dato charge[N];
i=CARGA(charge);
printf("\nEl valor de i es %d",i
); for (j=0;j<i;j++)
{
printf("\n%s",charge
[j
].
nombre); printf("\n%s",charge
[j
].
pais); }
CREACION(charge,i);
return 0;
}
int CARGA(dato charge[N])
{
int i=0,j=0,e=0,k=0;
char letra='a';
charge[i].doc=4;
while (i<N)
{
printf("\nIngrese el numero de documento: "); scanf("%d",&charge
[i
].
doc); if (charge[i].doc!=0)
{
printf("\nIngrese el nombre: ");
while(letra!='\r')
{
letra=getche();
charge[i].nombre[j]=letra;
j++;
}
charge[i].nombre[j]='\0';
j=0;
letra='a';
printf("\nIngrese el pais: ");
while(letra!='\r')
{
letra=getche();
charge[i].pais[e]=letra;
e++;
}
charge[i].pais[e]='\0';
e=0;
letra='a';
i++;
}
if(charge[i].doc==0)
{
return i;
}
}
return i;
}
void CREACION(dato charge[N],int i)
{
FILE*arch;
arch
=fopen("C:\\Users\\PC\\Desktop\\personas.txt","w"); char c='4';
int j=0;
{
if (j<i)
if (c=='\n')
j++;
}
}
La carga la realiza de forma perfecta. El problema es cuando tengo que pasar esos datos a un archivo.
Ya que tengo 1 int y 2 char de string.
Para el dato que es el documento no tengo ningun problema ya que utilizo la siguiente sentencia y lo guarda en el txt
El problema es con los otros 2 datos.
Nuestro profesor nos "obliga" por asi decirlo a usar fputc, entonces si yo pongo el fputc en el ciclo, solo estaria tomando una letra y yo quiero que tome letras hasta que encuentre un \n o un \0 pero nose como aplicarlo en el codigo.