De nuevo gracias por la paciencia y el entusiasmo....jeje....
nos vamos acercando a la cuestión....
para la ilustrar mi dilema anexo a continuación (

) un pequeño codigo
de un programa que escribí yo, y que debe ser parecido sino igual a otros, pues tiene como fin encontrar primos.
un algoritmo muy conocido, supongo. pero el programa tiene la particularidad que va guardando los primos en un vector, y usa ese vector para comprobar si los numeros son primos.
esto fue lo que hice:
//
// Programa para contar y guardar primos
#include <stdlib.h>
#include <stdio.h>
int main()
{
int *primos, *primoscopia, i,j,k,m1,s,m2;
float d,d1;
m1=2;
m2=2;
s=1;
primos = (int *)malloc (m1*sizeof(int)); ////asignando memoria para vector de enteros
primoscopia = (int *)malloc (m1*sizeof(int)); ///// copia del vector
primos[0] = 2;
primos[1] = 3;
primoscopia[0] = 2;
primoscopia[1] = 3;
i=4; j=0; ////////////////////////Condiciones iniciales
//////////////////////bucle principal
while(i<100000)
{
do{
d=(float)i/primos[j];
d1= d-(int)d;
if(d1== 0){s=0;}
if(j == m1-1)
{ printf("el numero %d es primon",i);
m2 = m1+1;
primos = (int *)malloc (m2*sizeof(int)); /////////Reasignando memoria para el vector;
primos[m1] = i;
s=0;
}
else { j++;}
} while(s==1);
if(m2==m1+1) {
for(k=0;k<m1;k++) {
primos[k]= primoscopia[k];
}
primoscopia = (int *)malloc (m2*sizeof(int)); //////////reasignando memoria para el vector copia
for(k=0;k<m2;k++) {
primoscopia[k]= primos[k];
}
}
m1=m2;
j=0;
s=1;
i++;
}
printf("%dn", m1);
}
nota: fue después, hace muy poco que me entere de la existencia de a%b en c. (función residuo).
bueno la cuestión es que el programa funciona muy bien hasta 100.000. si se usa un numero mas grande sucede que por ahí en 130.000 el programa, ejecutándolo bajo terminal, es abortado. de echo en la terminal sale algo como "finalizado(killed)" y ya ni una coma más. en aquel momento pensé que la cuestión podía tener que ver con la memoria ram o algo por ese lado......ahí fue la primera vez que pensé usar un archivo.
pero entonces si ustedes dicen que la memoria sobra........y el vector en mi programa cuando llega a 130.000 no tendrá más de 13.000 números, entonces me surgen dudas, dudas. ¿que es lo que pasa?.
me voy a poner a cacharrear un rato haber si consigo recuperar mi vieja idea de llevar este programa a su nueva versión archivo y de paso practico estas nuevas funciones en las que estoy incursionando.
Gracias, Muchas Gracias a todos, ayudenme a salir de dudas.