Tengo un problema con el siguiente codigo.
Basicamente.
1) Leo desde un archivo cierta información y la guardo en un arreglo de char.
2) Lo imprimo en pantalla (Hasta aca todo joya)
3) Cuando llamo a la funcion auxiliares lo que hace es abrir otro archivo y guardar esa informacion en otro arreglo de char.
4) No se porque cuando llamo a esta ultima funcion (auxiliares), al hacer un printf del contenido en la posicion 0 del primer arreglo, se borra.
Adjunto informacion de los 2 archivos al final
Espero que alguien pueda ayudarme porque no encuentro el error.
Archivo "nomina.txt" --->Contenido:
Juan Perez
Marta Saldiva
Juana Dorrego
Juan Perez
Susana Rodriguez
Pilar Santoro
Juan Perez
Archivo "actualizaciones.txt" --->Contenido:
Juan Perez
Graciela Arpe
Basicamente.
1) Leo desde un archivo cierta información y la guardo en un arreglo de char.
2) Lo imprimo en pantalla (Hasta aca todo joya)
3) Cuando llamo a la funcion auxiliares lo que hace es abrir otro archivo y guardar esa informacion en otro arreglo de char.
4) No se porque cuando llamo a esta ultima funcion (auxiliares), al hacer un printf del contenido en la posicion 0 del primer arreglo, se borra.
Adjunto informacion de los 2 archivos al final
Espero que alguien pueda ayudarme porque no encuentro el error.
Código (c) [Seleccionar]
#include <stdio.h>
#include <stdlib.h>
#define F 10
#define C 50
void lectura(char arreglo[F][C]);
void imprimir(char arreglo[F][C]);
void auxiliares(char arreglo[2][C]);
int main()
{
char arreglo[F][C];
char aux[2][C];
lectura(arreglo);
printf("Imprimir:\n \n");
imprimir(arreglo);
printf("El valor 0 del arreglo es: %s\n",arreglo[0]); ///Aca imprime perfecto el contenido
auxiliares(aux);
printf("El valor 0 del arreglo es: %s\n",arreglo[0]); ///Aca el mismo contenido ya no lo imprime, aparece vacio
printf("El valor 0 del arreglo es: %s",arreglo[1]); ///Aca los demas elementos si los tiene, pero no el de la posicion 0
return 0;
}
void lectura(char arreglo[F][C])
{
int i=0,j=0,r;
char letra;
FILE*arch=NULL;
arch=fopen("nomina.txt","r");
letra=fgetc(arch);
while(letra!=EOF && i<F)
{
while(letra!='\n' && j<C)
{
arreglo[i][j]=letra;
j++;
letra=fgetc(arch);
}
arreglo[i][j]='\0';
j=0;
i++;
letra=fgetc(arch);
}
arreglo[i][0]=0;
}
void imprimir(char arreglo[F][C])
{
int i=0;
while(arreglo[i][0]!=0)
{
printf("%s\n",arreglo[i]);
i++;
}
}
void auxiliares(char aux[2][C])
{
int i=0,j=0;
char letra;
FILE*arch=NULL;
arch=fopen("actualizaciones.txt","r");
letra=fgetc(arch);
while(letra!=EOF)
{
while(letra!='\n' && j<C)
{
aux[i][j]=letra;
j++;
letra=fgetc(arch);
}
aux[i][j]='\0';
i++;
j=0;
letra=fgetc(arch);
}
aux[i][j]='\0';
}
Archivo "nomina.txt" --->Contenido:
Juan Perez
Marta Saldiva
Juana Dorrego
Juan Perez
Susana Rodriguez
Pilar Santoro
Juan Perez
Archivo "actualizaciones.txt" --->Contenido:
Juan Perez
Graciela Arpe