摘要: 静态分配 在程序编译或运行过程中,按事先规定大小分配内存空间的分配方式。 必须事先知道所需空间的大小。 分配在栈区或全局变量区,一般以数组的形式。 按计划分配。 动态分配 在程序运行过程中,根据需要大小自由分配所需空间。 分配在堆区,一般使用特定的函数进行分配。 按需分配。 动态分配内存空间函数 1 阅读全文
posted @ 2017-11-24 23:00 lemongirl 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 1.内存按区域分类存放数据 栈区(stack):存放函数的参数值、返回值、局部变量等。 堆区(heap):用于动态内存分配。 未初始化静态全局区(bss):全局未初始化、静态未初始化数据。 初始化静态全局区(data):全局初始化、静态初始化数据。 文字常量区(rodata):字符串常量。 代码区( 阅读全文
posted @ 2017-11-24 22:57 lemongirl 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 链接方式分为两种:静态链接、动态链接。 静态链接 由链接器在链接时将库的内容加入到可执行程序中。 优点: • 对运行环境的依赖性较小,具有较好的兼容性。 • 程序在运行的时候不需要库的支持。 缺点: • 生成的程序比较大,需要更多的系统资源,在装入内存时会消耗更多的时间。 • 库函数有了更新,必须重 阅读全文
posted @ 2017-11-24 17:29 lemongirl 阅读(1526) 评论(0) 推荐(0) 编辑
摘要: C语言对源程序处理的四个步骤 预处理、编译、汇编、链接 预处理 (1)文件包含 #include (2)宏定义 #define (3)条件编译 #if #endif (4)一些特殊作用的预定义宏 1.文件包含 #include • #include< >与#include" " • <>表示系统直接 阅读全文
posted @ 2017-11-24 10:56 lemongirl 阅读(300) 评论(0) 推荐(0) 编辑