Resultados de la búsqueda a petición "free"

8 la respuesta

Cómo localizar un error de "doble libre o corrupción"

Cuando ejecuto mi programa (C ++), se bloquea con este error. * glibc detectado *./load: doble gratis o corrupción (! prev): 0x0000000000c6ed50 *** ¿Cómo puedo rastrear el error? Intenté usar print (std::cout) declaraciones, sin éxito. ...

8 la respuesta

Está liberando memoria asignada necesaria al salir de un programa en C

Si asigné memoria en mi programa C usandomalloc y ahora quiero salir, ¿tengo que liberar la memoria asignada, o puedo suponer que dado que todo mi programa termina, el sistema operativo lo liberará? Yo corro en un entorno Linux.

8 la respuesta

¿Por qué tengo que usar gratis en un puntero pero no una declaración normal?

¿Por qué tengo que usar free () cuando declaro un puntero como: int *temp = (int*)malloc(sizeof(int)) *temp = 3; pero no cuando lo hago: int temp = 3;

8 la respuesta

C - Diseña tu propia función free ()

Hoy, aparecí para una entrevista y el entrevistador me preguntó esto, Dime elpaso ¿Cómo diseñarás tu propiafree( ) función para desasignar la memoria asignada.Cómo puede ser más eficiente que el valor predeterminado de free() función? ¿Qué ...

9 la respuesta

Si free () conoce la longitud de mi matriz, ¿por qué no puedo solicitarla en mi propio código?

Sé que es una convención común pasar la longitud de las matrices asignadas dinámicamente a las funciones que las manipulan: void initializeAndFree(int* anArray, size_t length); int main(){ size_t arrayLength = 0; scanf("%d", &arrayLength); int* ...

9 la respuesta

¿Por qué free (p) no establece p en NULL?

Cualquier razón por la cual esto no puede ser un comportamiento estándar defree()? múltiples punteros apuntando al mismo objeto: #include <stdlib.h> #include <stdio.h> void safefree(void*& p) { free(p); p = NULL; } int main() { int *p = (int ...

10 la respuesta

¿Cómo sabe lo libre para liberar?

En la programación en C, puedes pasar cualquier tipo de puntero que desees como argumento para liberar, ¿cómo sabe el tamaño de la memoria asignada para libe...

12 la respuesta

Incapaz de liberar punteros constantes en C

¿Cómo puedo liberar unconst char*? Asigné nueva memoria usandomalloc, y cuando intento liberarlo, siempre recibo el error "tipo de puntero incompatible" El código que causa esto es algo como: char* name="Arnold"; const char* str=(const ...

12 la respuesta

Asigne memoria y guarde la cadena en c

Me preguntaba por qué el siguiente código no funciona int main(int argc, char **argv) { char *test = (char*) malloc(12*sizeof(char)); test = "testingonly"; free(test); }Después de pensarlo, supuse que primero asigno espacio para 12 caracteres ...

23 la respuesta

Configuración de la variable a NULL después de libre

En mi empresa hay una regla de codificación que dice que, después de liberar cualquier memoria, restablece la variable a NULL. Por ejemplo ...