Red de conocimiento informático - Computadora portátil - Cuando se ejecuta un programa en C, ¿sigue ocupando memoria nueva? ¿En cuanto a qué significa liberación de memoria?

Cuando se ejecuta un programa en C, ¿sigue ocupando memoria nueva? ¿En cuanto a qué significa liberación de memoria?

¿Los programas normales liberan memoria después de ocuparla?

Esto depende de la situación: la memoria asignada de forma no dinámica siempre está ocupada por el programa mientras se está ejecutando. La memoria asignada dinámicamente cambiará dinámicamente a medida que los datos cambien y el programa se ejecute. A veces se necesita mucha, a veces no. Cuando no se necesita, la liberación de la memoria asignada depende del control del código por parte del programador. > En circunstancias normales, un buen programa liberará la memoria asignada dinámicamente después de que se agote. En C, generalmente es el comando de eliminación.

Por supuesto, cuando hay fallas de programación y escritura, si se aplica ciegamente sin liberar, la memoria será absorbida, provocando pérdidas de memoria y fragmentación de la memoria, lo que provocará problemas en el funcionamiento de la máquina. Sin embargo, esta situación se resolverá después de que se cierre el programa o se reinicie la máquina.