文章预览
大家好,我是小风哥,今天简单聊聊内存分配。 我们申请一块内存时计算机内部发生了什么? 看 下这句代码: 这里有两部分,一个是malloc,再一个是你写的代码。 malloc实际上属于标准库,标准库里有什么呢? 数学相关的函数,sin、cos、绝对值、数幂函数等; 字符相关函数,判断大小写等; 字符 串操作函数、字符串拷贝、拼接比较等; 当然还有内存管理函数,就是这里提到的malloc/free,当然还有很多其它函数,这就是标准库。 再来看你写的代码,什么是你写的代码呢?以c语言为例,.c文件就是你写的代码,这包括你写的hello world程序、充满bug的练习程序,当然还有各种项目。 这就是你写的代码。 这些代码怎么变成最终的可执行程序呢?当然是借助编译器。 编译器会把你的代码编译成目标文件。 接着链接器出场,连接器会把目标文件和标准库
………………………………