![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
小菜鸡今天学习了嘛
正在学习iOS的小菜鸡,请多多指教
展开
-
程序栈&&栈帧
基础知识一个由C/C++编译的程序占用的内存分为以下几个部分:栈区(stack)— 由编译器自动分配释放 ,存放函数的参数名,局部变量的名等。其操作方式类似于数据结构中的栈。堆区(heap)— 由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。静态区(static)—全局变量和局部静态变量的存储是放在一块的。程序结束后由...原创 2019-04-27 21:40:28 · 1975 阅读 · 0 评论 -
一个程序栈崩溃(栈溢出)的简单示例(* ̄︶ ̄)
#include "stdafx.h"int add(int i, int& nRst){ if (i > 100000) return nRst; nRst += i; i++; return add(i, nRst);}int _tmain(int argc, _TCHAR* argv[]){ int nRst = 0; int i = 0; ...原创 2019-04-28 22:14:28 · 611 阅读 · 0 评论 -
内存泄露
前言程序的两大内存结构:堆和栈,两个在使用的时候都要注意规范,否则就容易在“小细节”上导致“大问题”。栈–>注意栈溢出,会导致崩溃堆–>注意内存泄漏,会导致系统卡慢,甚至是崩溃内存泄漏内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果内存泄漏缺陷具有隐蔽性、积累性...原创 2019-04-28 22:27:12 · 122 阅读 · 0 评论