La fuga de memoria ocurre cuando los programadores crean una memoria en el montón y se olvidan de eliminarla.
Las consecuencias de la fuga de memoria es que reduce el rendimiento de la computadora al reducir la cantidad de memoria disponible. Eventualmente, en el peor de los casos, se puede asignar demasiada memoria disponible y todo o parte del sistema o dispositivo deja de funcionar correctamente, la aplicación falla o el sistema se ralentiza enormemente.
C
/* Function with memory leak */ #include <stdlib.h> void f() { int *ptr = (int *) malloc(sizeof(int)); /* Do some work */ return; /* Return without freeing ptr*/ }
C
/* Function without memory leak */ #include <stdlib.h> void f() { int *ptr = (int *) malloc(sizeof(int)); /* Do some work */ free(ptr); return; }
C++
// C Program to check whether the memory is // freed or not #include <iostream> #include <cstdlib> using namespace std; int main() { int* ptr; ptr = (int*) malloc(sizeof(int)); if (ptr == NULL) cout << "Memory Is Insuffficient\n"; else { free(ptr); cout << "Memory Freed\n"; } } // This code is contributed by sarajadhav12052009
C
// C Program to check whether the memory is // freed or not #include <stdio.h> #include <stdlib.h> int main(void) { int* ptr; ptr = (int*) malloc(sizeof(int)); if (ptr == NULL) printf("Memory Is Insuffficient\n"); else { free(ptr); printf("Memory Freed\n"); } } // This code is contributed by sarajadhav12052009
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA