Lo que hago es reservar memoria para tantos valores como haya en el fichero de texto (si hay 4 valores reservo memoria para esos 4).
Con un bucle voy leyendo valor a valor y metiéndolos en cada posición de la memoria dinámica, al finalizar de meter todos los valores libero la memoria. Hasta todo bien (creo) ya que guarda los valores.
Pero luego, más alante en el programa tengo que guardar más variables en memoria dinámica, para ello hago otra vez una llamada a malloc y reservo con el mismo nombre que reserve anteriormente. (osea se van a guardar en el mismo vector). Y cuando hago la reserva los valores de antes se me borran, los que leí del texto.
Espero haberme explicado correctamente
1º llamada a reservar memoria, leyendo de un fichero.
Código:
posiciones = (int*) malloc (aux22 * sizeof (int));
if (posiciones == NULL) {
printf("Error al reservar memoria. ");
return 1;
}
}
if (aux23 < aux22) {
fscanf(f, "%i", &posiciones[aux23]);
aux23++;
2º llamada a reservar memoria, leyendo variables metidas por teclado.
Código:
posiciones = (int*) malloc (aux22 * sizeof (int));
if (posiciones==NULL){
printf ("error al reservar memoria");
}
aux24++;
aux26++;
posiciones[aux28]=aux24;
aux28++;
posiciones[aux28]=aux25;
aux28++;
posiciones[aux28]=aux26;
aux28++;
posiciones[aux28]=aux27;
aux28++;
free(posiciones);
aux29=0;
}
Los codigos no son completos, no he metido todo el bucle.
Muchas gracias, espero que me podais ayudar