vc调试大全】的更多相关文章

一.调试基础 调试快捷键 F5:  开始调试 Shift+F5: 停止调试 F10:   调试到下一句,这里是单步跟踪 F11:   调试到下一句,跟进函数内部 Shift+F11:  从当前函数中跳出 Ctrl+F10:  调试到光标所在位置 F9:       设置(取消)断点 Alt+F9:    高级断点设置 跟踪调试 1. 尽量使用快捷键时行调试 2. 观察调试信息 3. 高级中断设置 异常调试 重试->取消->调试 函数堆栈,用variables或者call stack 窗口 Re…
VC调试方法大全 一.调试基础 调试快捷键 F5:  开始调试 Shift+F5: 停止调试 F10:   调试到下一句,这里是单步跟踪 F11:   调试到下一句,跟进函数内部 Shift+F11:  从当前函数中跳出 Ctrl+F10:  调试到光标所在位置 F9:       设置(取消)断点 Alt+F9:    高级断点设置 跟踪调试 1. 尽量使用快捷键时行调试 2. 观察调试信息 3. 高级中断设置 异常调试 重试->取消->调试 函数堆栈,用variables或者call st…
VC调试方法大全 一.调试基础 调试快捷键 F5: 开始调试 Shift+F5: 停止调试 F10:   调试到下一句,这里是单步跟踪  F11:   调试到下一句,跟进函数内部 Shift+F11:  从当前函数中跳出 Ctrl+F10:  调试到光标所在位置 F9:       设置(取消)断点 Alt+F9:    高级断点设置 跟踪调试 1. 尽量使用快捷键时行调试 2. 观察调试信息 3. 高级中断设置 异常调试 重试->取消->调试 函数堆栈,用variables或者call st…
目录 第1章调试说明    1 1.1 调试设置    1 1.2 跟踪代码    2 1.3 断点    2 第2章模块生命周期    4 2.1 exe模块    4 2.2 dll模块    5 第3章调试WinCE程序    7 3.1 部署附加文件    7 3.2 共享文件夹    8 第1章调试说明 1.1 调试设置 使用Visual C++ 6.0打开一个项目,然后按下F5键即可开始调试程序.其实质就是启动VC++调试器,加载exe文件.具体加载哪个exe文件呢?请参考下面的项目…
难怪很多前辈说调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言.不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件. 我以前接触的程序大多是有比较成形的思路和方法,调试起来出的问题都比较小,最近这个是我自己慢慢摸索调试,接触了很多新的调试方法,并查了很多前辈的总结,受益匪浅,总结以前的和新的收获如下: VC调试篇 设置为了调试一个程序,首先必须使程序中包含调试信息.一般情况下,一个从AppWizard创建的工程中包含的Debug Configuration自动包含调试信…
一.调试基础 调试快捷键 F5:  开始调试 Shift+F5: 停止调试 F10:   调试到下一句,这里是单步跟踪 F11:   调试到下一句,跟进函数内部 Shift+F11:  从当前函数中跳出 Ctrl+F10:  调试到光标所在位置 F9:       设置(取消)断点 Alt+F9:    高级断点设置 跟踪调试 1. 尽量使用快捷键时行调试 2. 观察调试信息 3. 高级中断设置 异常调试 重试->取消->调试 函数堆栈,用variables或者call stack 窗口 Re…
gdb vc调试对照表: 实现功能                vc                   gdb 修改后编译              f7                   make 跳出函数(step out)    shift+f11            finish,f 重新启动                ctrl+shift+f5        run,r 运行到指定行            f9+f5                tbreak,tb + c…
问题简述 我们在调试程序时,经常会遇到程序中断的情况,就像下图这样. 我艹,这该怎么办,我们一下子就懵逼了.我们选择中断,常常会跳到一个莫名其妙的地方去. 正是这个断言 ASSERT(::IsWindow(m_hWnd) || (m_pCtrlSite != NULL)) 导致中断的发生,ASSERT中的参数只要是false, 就会发生中断.而且中断的地方,基本上都是父类的内部,这就坑爹了,中断把我们带到坑里来了?我们怎么样才能知道,自己写的代码哪里出现问题呢? 调试方法 我们知道,C++函数调…
1.windows-32调试: ①使用map文件根据崩溃地址寻找对应的源代码文件和行号 勾选project->settings->link->General mapfile,对应的Project Options中添加:/MAPINFO:LINES /MAPINFO:EXPORTS . 在不使用优化且没有多dll引用导致的重定向时,崩溃地址寻找对应的代码行的方法:崩溃地址=装载机地址(0x10000000)+PE头文件大小(0x00001000)+RVA值,这个RVA值在生成的map文件中…
(1)Ctrl+M --切换窗口的大小(2)Ctrl+Q --跳到最后一次的编辑处(3)F2      ---重命名类名 工程名 --当鼠标放在一个标记处出现Tooltip时候按F2则把鼠标移开时Tooltip还会显示即Show Tooltip Description.          F3        --跳到声明或定义的地方.          F5       --单步调试进入函数内部.          F6       --单步调试不进入函数内部,如果装了金山词霸2006则要把“取…
这篇文章主要用来记录使用Visual Studio过程中,出现的各种error,并提供自己当时解决的方案.但是,一个error可能由不用原因引起的,文中案例仅供大家参考. nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex 解决:将工程设置为Using MFC in static library cannot open file "mfc42u.lib" 解决:安装vc时…
调试是纠正或修改代码,使之可以顺利地编译.运行的过程.为此,VC IDE提供了功能强大的调试和跟踪工具. 1.1.1 调试版(Debug Version)和发行版(Release Version) 开发环境总是为你的工程创建调试版和发行版.在调试版里,我们排查各种可能的程序错误,然后制作成发行版以获得较好的信息.这就是调试版与发行版的区别:前者包含了较多调试信息,最终执行文件较大,性能较差:后者最终执行文件较小,性能更好.具体地讲,发行版和调试版区别有: 1.       调试版下,可以使用诊断…
调试技术与异常(错误)处理 (1)   转载自 52PK游戏论坛 跟踪与中间过程输出 也许一个开发人员一半以上的时间都是在面对错误,所以好的调试/查错方法(工具)会减轻我们工作的负担,也可以让枯燥的DEBUG过程得以缩短. VC开 发环境所提供的调试环境是很优秀的,我们可以运用单步运行,设置断点的方法来查找问题所在.但是这种跟踪是非常耗时的,所以我们需要采用一些策略来让我们 更容易的发现错误并对错误进行定位,所幸的是VC在这方面提供了强大的支持.在本节中我们先看看如何利用设置断点和利用TRACE…
概述调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言.不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件.这里我简要的根据自己的经验列出调试中比较常用的技巧,希望对大家有用.本文约定,在选择菜单时,通过/表示分级菜单,例如File/Open表示顶级菜单File的子菜单Open.  设置为了调试一个程序,首先必须使程序中包含调试信息.一般情况下,一个从AppWizard创建的工程中包含的Debug Configuration自动包含调试信息,但是是不是Debug版本并不是…
概述调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言.不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件.这里我简要的根据自己的经验列出调试中比较常用的技巧,希望对大家有用.本文约定,在选择菜单时,通过/表示分级菜单,例如File/Open表示顶级菜单File的子菜单Open.  设置为了调试一个程序,首先必须使程序中包含调试信息.一般情况下,一个从AppWizard创建的工程中包含的Debug Configuration自动包含调试信息,但是是不是Debug版本并不是…
在VC2010调试或执行EXE文件时,程序运行结束后自动退出了,想看到打印 可以采用几种方法: 1.按ctrl+F5只执行不调试 2.在cmd中手动调用 而不是直接点 3.加入getchar  #include <iostream> using namespace std; int main(void) { cout<<"welcome!"; getchar(); return 0; } 这样输入任意值可以退出 4.调用系统函数 #include<stdi…
作为一名前端开发者,打交道最多的可能是和浏览器.市面上各种浏览器多不胜数,主流的有Chrome,Firefox,Safari,IE,Opera,非主流的如360,遨游,QQ浏览器,搜狗浏览器,据说淘宝最近也要出浏览器了.不过个人最喜欢的还是Chrome,因为它的简洁和快速,还有功能的强大.FF什么的我觉得它已经慢得跟不上时代了:-D,这是个人意见,喜欢FF的朋友尽管吐槽.虽然IE和Firebug的开发工具都用过,但始终觉得不如Chrome顺手.下面就详细介绍一下Chrome的开发人员工具. Ch…
Visual C++ 的 C 运行时刻函数库标识模板0xCD    已经分配的数据(alloCated Data)0xDD    已经释放的数据(Deleted Data)0xFD    被保护的数据(Fence Data) Visual C++ 的 C 运行时刻函数库内存块类型标识符_NORMAL_BLOCK    由程序直接分配的内存_CLIENT_BLOCK    由程序直接分配的内存,可以通过内存调试函数对其拥有特殊控制权_CRT_BLOCK       由运行时刻函数库内部分配的内存_…
作为一名前端开发者,打交道最多的可能是和浏览器.市面上各种浏览器多不胜数,主流的有Chrome,Firefox,Safari,IE,Opera,非主流的如360,遨游,QQ浏览器,搜狗浏览器,据说淘宝最近也要出浏览器了.不过个人最喜欢的还是Chrome,因为它的简洁和快速,还有功能的强大.FF什么的我觉得它已经慢得跟不上时代了:-D,这是个人意见,喜欢FF的朋友尽管吐槽.虽然IE和Firebug的开发工具都用过,但始终觉得不如Chrome顺手.下面就详细介绍一下Chrome的开发人员工具. Ch…
http://blog.csdn.net/dd864140130/article/details/51560664 Android Studio目前已经成为开发android的主要工具,用熟了可谓相当顺手.作为开发者,调试并发现bug,进而解决,可是我们的看家本领.正所谓,工欲善其事必先利其器,和其他开发工具一样,如Eclipse.Idea,Android Studio也为我们提供了强大的调试技巧,今天我们就来看看Android Studio中有关调试的技巧. 首先,来看看Android stu…
本机调试F5: 开始调试Shift+F5: 停止调试F10: 调试到下一句,这里是单步跟踪 F11: 调试到下一句,跟进函数内部Shift+F11: 从当前函数中跳出F9: 设置(取消)断点OutputDebugString():在调试输出窗口输出文字assert()断言:测试的表达式如果为假的话则弹出错误框,终止程序,只在debug模式下起作用ASSERT.VERIFY:MFC中断言宏,VERIFY可以在release版本下使用TRACE:MFC下宏,功能类似OutputDebugString…
编译: gcc -g -o hello hello.c gdb 调试: 基本 gdb 命令. 命 令 描 述 小结:常用的gdb命令 backtrace 显示程序中的当前位置和表示如何到达当前位置的栈跟踪(同义词:where) breakpoint 在程序中设置一个断点 cd 改变当前工作目录 clear 删除刚才停止处的断点 commands 命中断点时,列出将要执行的命令 continue 从断点开始继续执行 delete 删除一个断点或监测点:也可与其他命令一起使用 display 程序停…
问题简述 我在Win7下写的MFC程序,想让它在winXP下运行.一般情况下,如果所有的依赖库都可以在XP下运行的话,那么在XP下运行时没问题的.但是,结果却... 本来程序在win7下运行得好好的,又没有依赖win7的库,为什么会报错呢? 怎么样在win7下提早发现这些运行时错误? 调试方法 通过询问度娘,认为出现上述情况的原因可能有以下几种: 数组的访问越界. 程序中的野指针 (指针没有初始化就使用,指针为空等) 我最后发现程序中使用了未初始化的指针.这个野指针在win7下竟然能运行!能运行…
http://www.360doc.com/content/12/1107/20/7851074_246467307.shtml   作为一名前端开发者,打交道最多的可能是和浏览器.市面上各种浏览器多不胜数,主流的有Chrome,Firefox,Safari,IE,Opera,非主流的如360,遨游,QQ浏览器,搜狗浏览器,据说淘宝最近也要出浏览器了.不过个人最喜欢的还是Chrome,因为它的简洁和快速,还有功能的强大.FF什么的我觉得它已经慢得跟不上时代了:-D,这是个人意见,喜欢FF的朋友尽…
引言 “工欲善其事,必先利其器” 没错,这句话个人觉得说的特别有道理,举个例子来说吧,厉害的化妆师都有一套非常专业的刷子,散粉刷负责定妆,眼影刷负责打眼影,各司其职,有了专业的工具才能干专业的事,这个灵感要来源于之前我想买化妆品时,店里的海报标语,由此联想到,如果你想在某个事情上做好,并且做的专业,那么你一定要把你的工具用好,这样才能事半功倍,我见过很多师兄师姐,写了很多代码,能够很快的完成工作,能够处理很多复杂的业务逻辑,但是对于浏览器的调试掌握的并不全面和深入,说说本人吧,我的编程调试起源于…
面板上包含了Elements面板.Console面板.Sources面板.Network面板.Timeline面板.Profiles面板.Application面板.Security面板.Audits面板这些功能面板.这些按钮的功能点如下: Elements:查找网页源代码HTML中的任一元素,手动修改任一元素的属性和样式且能实时在浏览器里面得到反馈. Console:记录开发者开发过程中的日志信息,且可以作为与JS进行交互的命令行Shell. Sources:断点调试JS. Network:从…
.在debug->windows下,有以下调试窗口 1)Breakpoints管理断点信息 可以新建条件断点,函数断点,以及特定地址改变断点(用于检测数据发生改变时机点) 在断点处,可以进入汇编语言查看汇编信息 断点详细信息包括: condition, hit count, funcion, file, address, process 等详细信息 2)Memory 给出了内存地址上详细信息,可查看各种变量,结构体,类等内存状态 3)Registers 给出了寄存器相关信息,在调试汇编时可以查看…
原文:http://blog.csdn.net/dadalan/article/details/3758025…
http://www.jianshu.com/p/9fc9fd89bfee http://www.cocoachina.com/ios/20150929/13598.html…
I was having the same problems too, and finally figured out how to solve this. Styne666 gave me a hint. Do the following: Tools Options... Build & Run Tool Chains Use the "Clone" button to make a copy of each of the auto-detected MSVC items…