I did a recursion to save a file in .txt format, but all the data is saved in a pointer, which when trying to compile I get an error.
void guardarRecursivo(FILE *archivo,int cantidad)
{
if(cantidad==0)
return;
cout<<" ? ";
fprintf(archivo,"%d %s %s %d %s %s\n",p->codigo,p->nombre,p->apellido,p->salario,p->direccion.departamento,p->direccion.provincia,p->direccion.distrito);
guardarRecursivo(archivo,cantidad-1);
}
void funcguardar(int cantidad)
{
char cadena1[30]="../";
char cadena2[30];
char cadena3[30]=".txt";
cout<<"INTRODUCE EL NOMRBE DEL DOCUMENTO A GUARDAR: ";
cin>>cadena2;cout<< endl;
strcat (cadena1,cadena2);
strcat (cadena1,cadena3);
cout<<cadena1<<endl;
FILE *ptrCf;
if((ptrCf=fopen(cadena1,"a"))==NULL)
{
cout<<"El archivo no pudo abrirse\n";
}
else{
guardarRecursivo(ptrCf,cantidad);
fclose(ptrCf);
}
}
Last edited on
Tell us what the error is.
If I had to guess, the function guardarRecursivo
doesn't know what p
is.