内存管理是计算机接近物理本质的操作,那些程序语言之下的动作,最终都要调动内存来实现。系统的资源不是无限的,系统上运行的程序也不是只有这一个,忽略内存,就会设计出危险的、冗余的代码产品,或者没法更好的交互。
为什么要进行动态内存分配?
内存不是取之不尽用之不竭,4g、8g、16g是常见的电脑内存大小,打开任务管理器,能看到不同的应用占据的内存情况。如果一个应用程序占了大部分内存,估计别的应用就资源紧张了,那这个应用可能会被卸载,找个节省内存的。
精简的应用能更有效地使用内存,而不是埋头搞业务逻辑,最后却整出来非常耗费资源的应用来。
在资源使用很小,代码量很小的时候,很少会涉及到内存泄漏的问题,也就不涉及内存管理的事情,尤其是当前C语言教学陈旧的教材,里面陈旧的习题,和内存管理几乎不沾边,学过的人不会意识到内存管理有什么用。
在https://stackoverflow.com/questions/24891/c-memory-management看到了一个解释写的很不错,放这里,用的都是简单的英语就不翻译了,可以在链接中找到原作者
Question
I've always heard that in C you have to really watch how you manage memory. And I'm still beginning to learn C, but thus far, I have not had to do any memory managing related activities at all.. I always imagined having to release var