Hilo
Hola respuesta a: (iper) 2017-09-08 16:48:33
Una cosa me gustaria saber que parte del codigo te fallan. Supongo que es esta linea:
array=(unsigned char*)malloc(n*sizeof(unsigned char));
Yo la haria de esta forma:
new unsigned char* = malloc(n*sizeog(unsigned char));
A mirate esto: https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Manejo_din%C3%A1mico_de_memoria#malloc
Chao
----------------------------------------------------------------------------------------------------------------------------------------------------
Hola que tal, mi nombre es manuel y necesito consejos sobre memoria dinámica
tengo que crear la matriz mas grande con 4 gb de ram por ende comence con un arreglo pero no se en que momento ni como parar la asignacion mi codigo esta incompleto pero esta es mi idea
/*******************************************************************
programa que calcula cuantos elementos de tipo char se puieden alojar en
un array de 4GB de memora ram
*************************************************************************/
#include
#include
#include
int main(){
int n,i; //n numero de filas n numero de columnas
float mem;
unsigned char * array;
mem=4294967296; //4GB=4*1024MB=4*1024*1024kB=4*1024*1024*1024B
//asignamos memoria a array
array=(unsigned char*)malloc(n*sizeof(unsigned char));
i=0;
while(mem!=0){
array[i]=(unsigned char)(rand()%255);
i++;
mem=mem-((float)sizeof(unsigned char));
}
n=i;
//imprimimos
for(i=0;i
_______________________________________________
Lista de correo Cconclase Cconclase@listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ