Proeblemas con malloc

Alberto Chavez
14 de Mayo del 2005
Hola, tengo un problema con la función malloc o al menos supongo que es la función la que me causa problemas, pues he hecho un programa que despoega el movimiento de una figura que va dejando una especie de estela en la pantalla, pero cuando reservo un malloc(64000), para los pixeles de la pantalla en modo grafico 13h, siempre me retorna un NULL y no entiendo por qué, pues la computadora en la que lo he probado tiene 512 de ram. Alguien puede ayudarme, se lo agradecería infinitamente

chuidiang
14 de Mayo del 2005
Bueno, no deberías tener problemas, 64K no es mucho. Revisa primero que no sea un error tonto de sintaxis. Si has hecho algo como el malloc y luego un if para comprobar si es NULL, suele haber dos errores tontos dificiles de ver
1 ) comparar si es NULL con un = en vez de un ==
2) Poner un ; despues del if
if (puntero == NULL); <-- fijate en el ;
printf ("El puntero es NULL");
En este caso, el printf() queda fuera del if y se ejecuta siempre. Si has puesto llaves da igual, lo de dentro de las llaves se ejecutará siempre.

Si no es nada de esto, solo para probar, haz un malloc de un tamaño mas pequeño (128 bytes, por ejemplo, y trata de encontrar un limite donde ya no te deja).

Una vez tengas el limite, cuentanos cual es y el sistema operativo que utlizas, quizas alguien sepa algo más.

Se bueno.

Skar
14 de Mayo del 2005
Mi problemas es parecido, pero con el operador NEW, yo ocupo dos areglos de 76K, lo raro es que el primero si lo puedo crear y en el segundo es cuando me retorna NULL, no conocen alguna forma de aumentar el espacio de memoria disponible para una aplicacion?