反汇编之C++的new
发布日期:2021-05-26 20:04:56 浏览次数:6 分类:技术文章

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

首先来看最简单的new操作

  1. int main()
  2. {
  3. int *temp = new int;
  4. delete temp;
  5. }

反汇编结果:调用了operator new

  1. 00311C9E push 4
  2. 00311CA0 call operator new (0311438h)
  3. 00311CA5 add esp,4

进入operator new中查看

  1. void* __CRTDECL operator new(size_t const size)
  2. {
  3. 00315320 push ebp
  4. 00315321 mov ebp,esp
  5. 00315323 push ecx
  6. for (;;)
  7. {
  8. if (void* const block = malloc(size))
  9. 00315324 mov eax,dword ptr [size]
  10. 00315327 push eax
  11. 00315328 call _malloc (03111B3h)
  12. 0031532D add esp,4
  13. 00315330 mov dword ptr [ebp-4],eax
  14. 00315333 cmp dword ptr [ebp-4],0
  15. 00315337 je operator new+1Eh (031533Eh)
  16. return block;

发现其底层也调用了malloc函数

转自

转载地址:https://blog.csdn.net/Gaodes/article/details/81701971 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:数据库入门整理
下一篇:反汇编之C++的虚函数

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月15日 12时18分23秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

java声明变量保存性别_java第二次课变量第一次上机 2019-04-21
js装修计算器java代码_JavaScript代码实现简单计算器 2019-04-21
功夫传人java_PAT L2-020 功夫传人【BFS】 2019-04-21
联机侠控制台JAVA_联机侠控制台常见问题 | 我的世界 | MC世界侠 2019-04-21
2018转行的java学习_2018java平均工资,想转行学java的快点上车 2019-04-21
glade java_如何在Java Gnome / GTK程序中使用Glade UI(.glade文件)? 2019-04-21
java 常用数据库_java连接常用数据库 2019-04-21
sublime php运行环境_【转载】Sublime Text 3设置吊炸天PHP开发环境 2019-04-21
有什么可以替换php,php替换函数是什么 2019-04-21
java静态方法是不是成员方法,Java静态变量与静态方法与成员变量成员方法的区别... 2019-04-21
oracle 结构讲解,Oracle 数据库体系结构解析 2019-04-21
merger oracle,merger oracle 函数 2019-04-21
oracle自带的sql环境,转载:使用Oracle11g自带的SQL Developer报错:Unable to find a Java Virtual Machine... 2019-04-21
oracle shrink space compact,oracle 学习笔记 Shrink 参数 compact 2019-04-21
win7 oracle10.1,windows7操作系统64位安装ArcSDE10.1和Oracle11g 2019-04-21
oracle 自动提交 配置文件,使用 netcfg 命令配置配置文件 - Oracle Solaris 管理:网络接口和网络虚拟化... 2019-04-21
操作系统linux基本环境,Linux操作系统中常见桌面环境的介绍 2019-04-21
linux美化文件,Linux 终端美化 - Oh My Zsh 2019-04-21
hp服务器 linux,HP服务器Linux下hpacucli常用命令 2019-04-21
linux 防火墙添加6309端口,关于在linux下部署垂直集群的问题 2019-04-21