博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
careercup-C和C++ 13.9
阅读量:7088 次
发布时间:2019-06-28

本文共 285 字,大约阅读时间需要 1 分钟。

13.9 编写支持对齐分配的malloc和free函数,分配内存时,malloc函数返回的地址必须都能被2的n次方整除。

解法:

  一般来说,使用malloc,我们控制不了分配的内存会在堆里哪个位置。我们只会得到一个指向内存块的指针,指针的起始地址不定。

要克服这些限制条件,我们必须申请足够大的内存,要大到可以返回可被指定数值整除的内存地址。

假设需要一个100字节的内存块,我们希望它的起始地址为16的倍数。需要额外分配多少内存才够用呢?我们需要额外分配15字节。有了这15字节,加上紧随其后的100字节,就能得到可被16整除的内存地址,以及100字节的可用空间。

 

转载地址:http://lmyql.baihongyu.com/

你可能感兴趣的文章
Linux 逻辑卷管理相关知识(1)
查看>>
我的友情链接
查看>>
MySQL主从介绍、准备工作、 配置主、 配置从、 测试主从同步
查看>>
servlet实现MVC
查看>>
修改mysql默认字符集charset
查看>>
Ruby2.3.3操作MongoDB入门(Mongo驱动版本2.4.3)-数据库CRUD(创建、查询、更新、删除)...
查看>>
UserMailbox 必须强制使用 Database
查看>>
iOS MD5加密字符串
查看>>
Forrester 2011年安全策略建议
查看>>
域用户登陆脚本
查看>>
System Center 2012 R2实例3—SCOM之SharePoint全方位监视9—内存监视
查看>>
磁盘管理之磁盘分区,主引导分区表修复
查看>>
linux的软件安装
查看>>
ios 自定义状态栏
查看>>
针对cli模式下的php运维脚本
查看>>
iOS开发学习笔记 2-3 C语言部分 控制流
查看>>
ZooKeeper 基本API使用
查看>>
常用端口说明
查看>>
成为JavaGC专家(2)—如何监控Java垃圾回收机制
查看>>
Netty4.0 开发指导 1
查看>>