首页 > 其他分享 >实用技巧续篇

实用技巧续篇

时间:2025-01-11 20:31:43浏览次数:3  
标签:实用技巧 续篇 调用 查看 地址 反汇编 我们 调试

1.查看临时变量的值

这里确定调试开始以后,我们找到调试窗口里面的监视,就会出现图片里面的这个图片,在里面输入自己定义的名称,如何呢,然后继续按F10,逐步走下去,同时观察右边的数值的变化就可以了。

2.查看内存信息 
在调试开始之后,我看变量变化看不出来哪里变了怎么办呢,我想了解一下,这个变量到底啥关系呢,这就得我们去访问地址了,就像你想知道两个人有什么关系,就得去打探这两人离得近不近,住的近不近是吧,所以我们这里要调出地址来看看:

这里对于新人不是很友好,但是没关系,你把前面一串的字符记成门牌号就行了,就像我们平常很容易就出现的访问越界的问题,如果我知道了你的地址,也知道了目的地的地址,是不是就知道往哪走了?,后面的是十六进制的具体数值,这里不解释,后面栈帧创建的适合我再写。也就是说前面就是你这个局部变量,或者你这个数组首元素的地址了。

3.查看调用堆栈

这里调用堆栈,可以清晰的反应函数的调用关系以当前调用所处的位置。这个也和上面一样,在栈帧创建的时候一起理解会更容易。

上面的图里都用到了反汇编,为什么呢,因为我们的vs是编译器吗,不,有失偏颇。我们的vs其实是一个集成开发环境平台,具有这个汇编的功能,自然有反汇编的功能,就类似于加密和解密。

接下来我们看看这个反汇编怎么进入:

(1)第一种方式:右击鼠标,选择【转到反汇编】:

(2)第二种方式:还是调试界面直接进入,简单粗暴。

最后一点4.查看寄存器信息

这里可以看我们在使用的寄存器的具体信息,也就是之前提到的esp,ebp那些,大致有个了解就行。

最后多动手尝试调试,才能有进步。 一定要熟练掌握调试技巧。

初学者可能80%的时间在写代码,20%的时间在调试。

但是一个程序员可能20%的时间在写 程序,但是80%的时间在调试。

我们现在所看到的的都是一些简单的调试。

以后可能会出现很复杂调试场景:多线程程序的调试等。

所以快捷键的使用就尤为重要了!

最后感谢您的观看。我们一起进步!

标签:实用技巧,续篇,调用,查看,地址,反汇编,我们,调试
From: https://blog.csdn.net/chenyuhao2024/article/details/145081566

相关文章

  • 【实用技巧】【探讨】Java 中比较两个对象的差异
    1 前言大家平时写业务代码的时候,应该能感知到哪些是基础配置数据,哪些是实例数据。比如营销里的活动信息、促销信息就属于配置型数据,基于活动带来的订单参与活动信息属于实例数据。比如一些规则信息、流程信息等类似一种版本的概念。那么版本跟版本之间的差异、以及创建新版本的......
  • 解锁 Git Log 更多实用技巧
    目前,在软件开发的协作中,Git无疑是版本控制的王者。而其中的gitlog命令,犹如一把强大的历史探寻之剑,能够帮助我们深入洞察项目的演进历程。本篇将为大家整理解读几个实用的gitLog技巧,让你的项目管理和代码审查工作如虎添翼。1.挖掘代码深处的历史变更gitlog具备按文件......
  • 浅入浅出docker run命令源码3-containerd续篇
    1.前情回顾上一篇我们已经知道如何找到对应的gRPC请求接口的逻辑代码了,但是还没有看具体的代码。在最初的《浅入浅出dockerrun命令源码》中已知,启动容器还需要启动shim进程以及runc进程。但是具体是如何启动的,还不清楚。这篇文章中,主要解决问题是containerd是如何启动......
  • 【Unity实用技巧】Transform组件位置快速对齐(编辑器扩展)
    前言在Unity项目开发中,经常需要调整物体的位置。特别是在处理3D模型时,我们可能需要将一个父物体移动到其所有子物体的中心位置或底部中心位置。本文将介绍如何通过Unity编辑器扩展来实现这个功能,让美术同学在摆放模型时更加方便。一、效果演示二、完整代码这里直接上......
  • 【实用技巧】MD5 的重复请求应用以及性能测试
    1 前言大家可能都遇到幂等或者娇艳重复提交的问题,比如重复的JSON请求、文件上传相同的文件重复上传了两次等,当然了确实存在某种情况比如人家用户一会上传了一个文件隔了一会儿又上传一个同样的文件是合理的,我们要做的就是短时间内的重复提交。这个时候我们可以通过计算请求......
  • 如何通过看板方法提高团队协作?5个实用技巧!
    一、看板方法概述什么是看板方法看板方法源于丰田生产系统,是一种通过可视化方式管理任务和工作流程的强大工具。它将工作流程中的任务、进度、问题等直观地展示出来,帮助团队成员更好地理解和掌控工作。看板方法可以看作是将一个软件开发流程或其他工作流程类比为一段自......
  • 高效开发:掌握 Vue.js 的五个实用技巧
    高效开发:掌握Vue.js的五个实用技巧......
  • Java源代码解析-续篇-语法(块,语句和模式)
    Java源代码解析-续篇-语法(块,语句和模式)目录Java源代码解析-续篇-语法(块,语句和模式)引言Blocks(块)Statements(语句)Patterns(模式)暂告一段落引言Blocks(代码块)、Statements(语句),Patterns(模式)构成了Java程序逻辑与结构的核心要素,无论是编写简单的打印语句,还是构建复杂的......
  • 想提高工作效率?试试这些实用技巧!
    在现代企业的日常运营中,工作效率低下似乎已成为许多团队和项目管理中的普遍现象。无论是在软件开发、市场营销、产品设计还是其他行业中,团队成员往往面临着进度滞后、任务拖延、沟通不畅等问题,导致整体工作效率低下,影响项目的顺利推进。这些问题不仅给团队带来了很大的压力,也直接......
  • Java 多线程探秘:核心概念与实用技巧全解析
    1.有三个线程T1,T2,T3,如何保证顺序执行?要确保三个线程T1,T2,和T3按顺序执行,你可以使用多种同步机制。以下是几种常见的方法:Join方法启动T1线程。调用T1.join(),这将使当前线程(假设是主线程)等待直到T1完成。启动T2线程,并调用T2.join()。最后启动T3线程,并......