c语言设置断点 | c++设置断点

c语言设置断点 | c++设置断点

1. c++设置断点

首先打开软件找到你的没有错误的程序但是呢运行结果不对 使用F9设置断点,设置你认为有问题的函数的地方例如图片,其中红点即为断点 选择F10一步步运行程序 按F10单步执行,遇到要输入的数据就输入例如输入文件 然后选择F10继续执行,在右边可以查看各个数据的数值,例如查看字符数组 通过查看各个数值的值即可找到出错的原因

2. C++设置断点

所谓断点就是告诉调试器在何处暂时程序的运行,以便查看程序的状态以及浏览和修改变量的值等,但是在不同的运行环境中断点的类型是不一样的,在vc++6.0中用于c++调试的断点可一分为3个类型,位置断点,数据断点,条件断点。

位置断点是指示程序运行的中断的代码行号数据断点是当某个表达式的值为真或者改变数值时中断程序的运行条件断点是位置断点的扩展,他们的方式相同,当某个表达式的值为真或者改变数值时中断程序的运行在程序中设置和清楚断点有两种方式,一种是简单的快捷方式,另一种是使用edit-->breakpoints(快捷键alt+f9),系统弹出breakpoint,选择不同的页面进行不同的断点设置,打的很辛苦啊,给点分啊,(*^__^*) 嘻嘻…

3. c语言中怎么设置断点

这个是设置断点调试的时候用的,设了断点(就是光标移动到要设的地方按f9,或者点工具条上的手形光标),然后调试(按f5,或者点工具条上手形光标的左边那个图标),进入调试界面,没有改过设置的话在下面会有三个框,其中一个(就是三个框里上面靠右的那个),有watch1,watch2……选项卡的那个框,在名称下面的格子里点击,然后输入变量名,按回车,当前断点处的变量值就会出现在后面

4. c设置断点

无法实现。

阁下应该搞清头文件和C文件的区别。

头文件只声明变量和函数,并不生成代码。也就是说:头文件是给编译器用的。C文件生成代码,是真正程序执行用的。

阁下在使用keil时,如果是头文件,只要主程序里包含一下就行。如果是C文件,就要在工程里添加。你可以在添加的C文件里设置断点。

事实上头文件只是声明变量和函数,你根本不必要设置断点,因为程序从来就不走那里的。

5. c++设置断点的作用是什么

您好,VC6.0和Dev C++都是集成开发环境(IDE),通俗来说就是可以写代码、编译、运行的可视化工具。区别如下:

1、VC6.0是微软出品,Dev C++由Bloodshed开发,前者体量较大,可以进行MFC可视化界面的编程,后者相对体量较小。

2、DevC++使用gcc编译器,DevC++使用自带编译器,很多时候ACM比赛使用的是gcc编译器,不同的编译器对于个别语句的解释可能不同,因此可能出现在写的程序在一个编译器编译通过,换成另一个却不通过的情况。

3、VC的功能更强大一些,断点调试等支持较好(虽然DevC++也支持,但不如VC6.0好用)综上所述,如果是开发项目如多文件编程、MFC编程建议使用VC6.0,如果只是单纯的写个C/C++小程序,或者是参加ACM比赛,那么使用DevC++即可。

6. c语言如何设置断点

在源码那一行插入breakpoint,再使用debug指令激活。

7. c语言设置断点是什么意思

DEBUG是一个DOS实用程序,是供程序员使用的程序调试工具,可以用它检查内存中任何地方的字节以及修改任何地方的字节。它可以用于逐指令执行某个程序以验证程序运行的正确性,也可以追踪执行过程、比较一个指令执行前后的值以及比较与移动内存中数据的范围,读写文件与磁盘扇区。

  它的功能包括以下几个方面。

  ⒈ 直接输入,更改,跟踪,运行汇编语言源程序;

  ⒉ 观察操作系统的内容;

  3.查看ROM BIOS的内容;

  ⒋观察更改RAM内部的设置值;

  ⒌以扇区或文件的方式读写软盘数据。

  A 汇编命令

  功能: 将指令直接汇编成机器码输入到内存中。

  说明: 用于小段程序的汇编及修改目标程序,所有输入的数字均采用十六进制, 用户装入内存的汇编语句是连续存放的,若没有指定地址,并且前面没有使用汇编命令,该语句被汇编到 CS:0100区域。

  例A:>DEBUG

  -a 0100

  08F1:0100 MOV AH,09

  08F1:0102 MOV DX,109

  08F1:0105 INT 21H;

  08F1:0107 INT 21H;<-XP下运行cmd debug时,应该是INT 20H,21H会出遇无效指令错误

  08F1:0109 db 'May I help you $'

  08F1:0115←离开a状态

  -g ←运行

  May I help you 运行结果

  Program terminated normally表示运行正常

  C比较命令

  功能: 比较两内存区域中的内容是否相同,若不同则显示其地址和内容。

  如:C4000:0 3F 100

  就是用来比较4000:0000-4000:003F与DS:0100-DS:013F之间的内容:其显示格式如下:

  内存地址1内含值1内含值2内存地址2

  例:比较4000:0 3F 100内容的差异

  -C4000:0 3F 100

  4000:0000 64 43 08F1:0100

  4000:0001 3E 69 08F1:0101 显示内容的差异处

  4000:0002 78 FF 08F1:0102

  ……………………………………

  如果要比较的范围在DS内,则段地址不必指出:

  如:-C 0 4 100;比较DS:0---DS:4与DS:100---DS:104

  C命令的另一种格式如下:C地址1 L 长度 地址2

  如:-C000:0 L4 0;由0000:0与与DS:0开始比较它同-C0000:0 3 0命令相等,显示结果如下:

  0000:0000 8A C0 08F1:0000

  0000:0001 10 20 08F1:0001 它们都比较4个字节

  0000:0002 1C 00 08F1:0002

  0000:0003 49 7F 08F1:0003

  转储命令

  * D[地址] 或D[起始地址][目的地址] 转储命令

  功能: 以内存映象方式显示内存中的信息。

  说明: 转储用左右两部分显示内存映象内容,左边以十六进制,右边以ASCⅡ字符显示,所有不可打印字符用句号(。)表示。每行显示16个字节的内容,在第八和第九个字节之间有一个连字符 - 此命令隐含的段地址为DS的值。若未指定起始地址,则D命令从显示的最后一个单元的下一个单元开始显示,若以前没有使用给D命令, 则从初使化的段寄存器的内容,加上地址偏移量 0100H 开始显示。

  例:-d10,4f即为显示DS:4f的内容在D命令中如不指出段地址,则其默认为DS段。

  如指明段地址,则从指明的段地址列出指定的范围

  如:-dfff:00:0f

  我们也可以指定长度来列出所需要内存内容

  如:-d 100 L20即为显示由DS:100-DS:11F的内容,共20H个字节:

  * E[地址] [字节串) 修改内存命令

  功能: 从指定的地址开始修改内存值。

  格式:E起始地址[数据行]

  ⑴用给定内容代替指定范围的单元内容

  -E地址 内容表

  例:-E100 41 42 43 44 48 47 46 45

  -D 100,L08

  08F1:0100 41 42 43 44 48 47 46 45 ABCDHGFE…

  ⑵逐个内存内容

  例:-E 100:

  08F1:0100 76 42 :42是操作员键入

  此命令是将原100号内存内容76修改为42,用D命令可察看。

  * F[地址范围] [字节或字节串] 填写命令

  功能: 将要填写的字节或字节串填入由地址范围指定的存储器中。

  例:-f100 120 61 62 63 64

  -d100 11f

  08F1:0100 61 62 63 64 61 62 63 64 -61 62 63 64 61 62 63 abcd abcd abcd abcd

  08F1:0110 13 67 98 E3 C8 2E B3 B6 -03 21 AC 19 3121 4E 96 g……1…

  如果数据行超出指定的范围,则填不下的数值会被忽略。

  例:-f 100 107 41 43 43 44 45 46 47 48 49 4A 4B 4C 4D -d 100,lof

  08F1:0100 41 42 43 44 45 46 47 64 -61 62 63 64 ABCDEFGdabcdabcd

  由上例可看出,超出范围的数据被忽略

  另外,F和E命令都可填入字符串:

  如:-F 100 105 "MSDOS"

  -d 100 l0f

  08F1:0100 4D 53 44 4F 53 46 47 64 -61 62 63 64 MS DOS FGabcd abcd

  G执行命令

  功能: 执行正在调试的程序,当达到断点时停止执行, 并且显示寄存器标志和下一条要执行的命令。

  说明: 如果没有指定起始地址,那么当前指令地址由CS,IP寄存器的内容来决定,如果用户指定起始地址就从指定的起始地址开始执行。如果指定断点,当指令到达指令地址时停止执行,并显示各寄存器标志位的内容和下一条要执行的命令,最多允许用户设定10个断点。

  例:A:\>debug tan.exe

  -u:反编译成汇编语言程码

  …………

  . .

  -g 100 指定中断点

  Program terminated normally:

  另外:我们在DEBUG下可运行一个文件.EXE

  如:A:\>debug tan.exe

  -g

  即可开始运行此程序,和在DOS下完全一样:

  * H[数值][数值] 十六进制算术运算命令

  功能: 分别显示两个十六进制数相加的和以及第一个数减去第二个数的差。

  说明: 替用户完成简单的十六进制数的运算。

  例:-h4538 5623

  9B5B EF15

  I命令

  功能: 从指定的端口输入并显示(用十六进制)的一个字节。

  例:-i70

  F9;显示70端口的内容为F9

  I命令可由80X86的64K个端口取数据

  L命令

  功能: 将一个文件或盘的绝对扇区装入存储器。

  说明: 单个L命令能够装入的最大扇区数是 80H,其中盘号 0,1,2,3……分别代表 A,B,C,……出现读盘错,显示错误信息。

  ⑴格式1.L装入地址 驱动器名 起始扇区/扇区数

  这种方式可把磁盘上指定扇区范围的内容装入到存储器从指定地址开始的区域中,在此外扇区编号引用逻辑/扇区的方式。

  例:-L 100 0 01,将A驱的0扇区装至CS:100上

  -d 100 10f

  08F1:0100 EB 3C 90 3C 53 44 4F 53 -36 2E 32 32 02 01 01 00.L,MSDOS 6.22……

  ⑵格式2:L装入地址

  这种方式可把指定文件装入内存,装入的文件可在进入DEBUG时指定亦可用N命令建立,格式为-n文件名:

  例1 DEBUG tan.pas

  -L 100

  例2 DEBUG

  -n tan.pas

  -L 100

  须知:L命令只能读取逻辑扇区,不能读取硬盘分区表

  L命令中所用的磁盘代码A=00,B=01,C=02……

8. c++ 断点调试技巧

在代码编辑窗口左侧的竖条上点击一下出现红色的圆点,同时代码行变红,点击运行程序,程序执行到断点处会暂停,点击“步越”菜单或者按F8键可以一行一行地执行代码,函数调用也属于一行,点击“步入”菜单或者按F7键也是按行执行,不同的是遇到函数调用会进入函数内部。

双击一个变量选中,点击菜单【运行——添加监视】,或者右键点击出现弹出菜单,【调试——在光标处添加监视】,将变量添加到监视点列表窗口(在【主菜单——窗口】里可以切换显示各个窗口,小屏幕有用),该窗口可以观察调试过程中各个变量的值。

如果要在调试时修改变量的值,【运行——求值/修改】窗口可以做到,【运行——检查】窗口也可以,在监视点列表窗口中选中一个变量以后【右键点击——检查】也会出现调试检查器窗口,点击变量的值右边的【...】按钮,就可以修改该变量的值。

9. c++如何设置断点

(1)设置断点控制程序直接运行到指定地点,然后查看运行到这个地方时程序的状态,如变量的值、调用栈的情况等。

方法是,通过设置断点来达到这一目的。

设置断点的方式是:将鼠标光标移到程序行要设置断点的地方,按F9键或工具条中手形按钮(再按一次表示取消设置),此时在该程序行左侧出现一个红色圆点,表示断点设置成功。

(2)启动调试按F5键(或选择“Build→StartDebug→Go”或选择工具栏上的GO图标),设置程序调试的起始点,就可以启动调试程序。程序会一直运行到需要用户输入或者有断点的代码处。

10. C++怎么设置断点

断点是为了判断程序是否按照自己的意愿运行

11. c语言设置断点后怎么看

你到网上找找硬盘数据恢复软件,碰碰运气吧,一般免费软件的效果不怎么样,我用过,只能找回部分。再者就花钱搞。需要进一步帮助,请补充。

tag:断点设置语言断点调试作用

相关内容