Preguntas con la etiqueta [malloc]

Lista malloc preguntas

¿Es mejor asignar memoria en potencia de dos?

11
respuestas
42
votos
9.8k
vistas

Cuando utilizamos malloc()para asignar memoria, ¿deberíamos dar el tamaño que está en potencia de dos? ¿O simplemente le damos el tamaño exacto que necesitamos? Como //char *ptr= malloc( 200 );

Anulando 'malloc' usando el mecanismo LD_PRELOAD

6
respuestas
51
votos
42.1k
vistas

Estoy intentando escribir una biblioteca compartida simple que registre las llamadas de malloc a stderr (una especie de 'mtrace', por así decirlo). Sin embargo, esto no funciona. Esto es lo

Estoy usando un servidor con 128 GB de memoria para hacer algunos cálculos. Necesito malloc()una matriz flotante 2D de tamaño 56120 * 56120. Un código de ejemplo es el siguiente:

¿Cómo funcionan malloc() y free()?

13
respuestas
322
votos
203.7k
vistas

Quiero saber como mallocy freetrabajar. int main() { unsigned char *p = (unsigned char*)malloc(4*sizeof(unsigned char)); memset(p,0,4); strcpy((char*)p,"abcdabcd"); // **deliberately storing 8bytes** cout << p; free(p); // Obvious Crash, but I

He asignado una "matriz" de mystructtamaño ncomo esta: if (NULL == (p = calloc(sizeof(struct mystruct) * n,1))) { /* handle error */ } Más adelante solo tengo acceso a p,

¿Qué es un montón de memoria?

8
respuestas
251
votos
199.1k
vistas

¿Qué es un montón de memoria?

¿Cuál es el punto de malloc (0)?

18
respuestas
162
votos
102.7k
vistas

Acabo de ver este código: artist = (char *) malloc(0); ...y me preguntaba ¿por qué se haría esto?

Siempre he tenido curiosidad acerca de esto: ¿por qué en C++ tengo que convertir el valor de retorno mallocpero no en C? Aquí está el ejemplo en C++ que funciona:

¿Diferencia entre malloc y calloc?

14
respuestas
948
votos
646.6k
vistas

¿Cuál es la diferencia entre hacer: ptr = malloc(MAXELEMS * sizeof(char *)); Y: ptr = calloc(MAXELEMS, sizeof(char*)); ¿ Cuándo es una buena idea utilizar callocover malloco viceversa?

Programación C: malloc() dentro de otra función

9
respuestas
83
votos
118.1k
vistas

Necesito ayuda con malloc() otra función interna . Estoy pasando un puntero y un tamaño a la función desde mi main()y me gustaría asignar memoria para ese puntero dinámicamente usando

alloca()Asigna memoria en la pila en lugar de en el montón, como en el caso de malloc(). Entonces, cuando vuelvo de la rutina la memoria se libera. Entonces, en realidad

Esta pregunta debe utilizarse como duplicado canónico de estas preguntas frecuentes: Estoy asignando datos dinámicamente dentro de una función y todo funciona bien, pero solo dentro de la función donde