📄 book_text11.htm
字号:
<TR>
<TD width=87 height=0></TD></TR>
<TR>
<TD></TD>
<TD><IMG height=270 src="book_text11.files/book_t13.gif"
width=359 v:shapes="_x0000_s1037"></TD></TR></TBODY></TABLE></SPAN><!--[if gte vml 1]></O:WRAPBLOCK><![endif]--><BR
style="mso-ignore: vglayout" clear=all><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">图4.13<O:P>
</O:P></SPAN>
<P class=MsoNormal
style="TEXT-INDENT: 21.25pt; mso-line-height-alt: 1.3pt"><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">在图<SPAN
lang=EN-US>4.13中:<O:P> </O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 21.25pt; mso-line-height-alt: 1.3pt"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">Step
over 的功能是运行当前箭头指向的代码(只运行一条代码)。<O:P> </O:P></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 21.25pt; mso-line-height-alt: 1.3pt"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">Step
Into的功能是如果当前箭头所指的代码是一个函数的调用,则用Step Into 进入该函数进行单步执行。<O:P>
</O:P></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 21.25pt; mso-line-height-alt: 1.3pt"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">Step
Out的功能是如当前箭头所指向的代码是在某一函数内,用它使程序运行至函数返回处。<O:P> </O:P></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 21.25pt; mso-line-height-alt: 1.3pt"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">Run
to Cursor的功能是使程序运行至光标所指的代码处。<O:P> </O:P></SPAN></P>
<P class=MsoNormal style="mso-line-height-alt: 1.3pt"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><SPAN
style="mso-spacerun: yes"> </SPAN><O:P></O:P></SPAN></P>
<H3 style="mso-line-height-alt: 1.3pt"><A name=_Toc419881654><SPAN
lang=EN-US
style="FONT-FAMILY: 宋体; mso-hansi-font-family: Times New Roman; mso-bookmark: _Toc419740472">1.5
查看工具的使用</SPAN></A><SPAN lang=EN-US
style="FONT-FAMILY: 宋体; mso-hansi-font-family: 'Times New Roman'"><O:P>
</O:P></SPAN></H3>
<P class=MsoNormal style="mso-line-height-alt: 1.3pt"><SPAN
lang=EN-US
style="FONT-SIZE: 12pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: Times New Roman; mso-spacerun: yes">
</SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><SPAN
style="mso-spacerun: yes"> </SPAN>调试过程中最重要的是要观察程序在运行过程中的状态,这样我们才能找出程序的错误之处。这里所说的状态包括各变量的值,寄存中的值,内存中的值,堆栈中的值
,为此我们需要利用各种工具来帮助我们察看程序的状态。<O:P> </O:P></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 39pt; TEXT-INDENT: -18pt; mso-line-height-alt: 1.3pt; tab-stops: list 18.0pt; mso-list: l109 level1 lfo67"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: Symbol; mso-bidi-font-size: 10.0pt">¨<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">弹出式调试信息泡泡<SPAN
lang=EN-US>(Data Tips Pop_up Information)。</SPAN></SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><BR>当程序在断点停下来后,要观察一个变量或表达式的值的最容易的方法是利用调试信息泡泡。要看一个变量的值,只需在源程序窗口中,将鼠标放到该变量上,你将会看到一个信息泡泡弹出,其中显示出该变量的值。</SPAN></P>
<P align=center><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN><SPAN
style="mso-ignore: vglayout"><IMG height=284
src="book_text11.files/book_t14.gif" width=378
v:shapes="_x0000_s1038"></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 18pt; TEXT-ALIGN: center; mso-line-height-alt: 1.3pt; mso-outline-level: 1"
align=center><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">图<SPAN
lang=EN-US>4.14<O:P> </O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 18pt; mso-line-height-alt: 1.3pt"><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">要查看一个表达式的值,先选中该表达式,仍后将鼠标放到选中的表达式上,同样会看到一个信息泡泡弹出以显示该表达式的值如图<SPAN
lang=EN-US>4.15所示。<O:P> </O:P></SPAN></SPAN></P>
<P align=center><SPAN style="mso-ignore: vglayout"><IMG height=303
src="book_text11.files/book_t15.gif" width=405
v:shapes="_x0000_s1039"></SPAN><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><BR
style="PAGE-BREAK-BEFORE: always" clear=all></SPAN>
<P class=MsoNormal
style="TEXT-INDENT: 18pt; TEXT-ALIGN: center; mso-line-height-alt: 1.3pt"
align=center><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">图<SPAN
lang=EN-US>4.15<O:P> </O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 39pt; TEXT-INDENT: -18pt; mso-line-height-alt: 1.3pt; tab-stops: list 18.0pt 39.0pt; mso-list: l58 level1 lfo68"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: Symbol; mso-bidi-font-size: 10.0pt">¨<SPAN
style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">变量窗口(VARIABLE
WINDOW)。</SPAN><BR style="mso-ignore: vglayout" clear=all><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">在VIEW
菜单,Debug window选 Variables window;
变量窗口将出现在屏幕上。其中显示着变量名及其对应的值。你将会看到在变量观察窗口的下部有三个标签:AUTO ,LOCAL,THIS
选中不同的标签,不同类型的变量将会显示在该窗口中。<O:P> </O:P></SPAN>
<P class=MsoNormal style="mso-line-height-alt: 1.3pt"
align=center><SPAN style="mso-ignore: vglayout"><IMG height=282
src="book_text11.files/book_t16.gif" width=376
v:shapes="_x0000_s1040"></SPAN></P>
<P class=MsoNormal
style="TEXT-ALIGN: center; mso-line-height-alt: 1.3pt"
align=center><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">图<SPAN
lang=EN-US>4.16<O:P> </O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="MARGIN-LEFT: 54pt; TEXT-INDENT: -27pt; mso-line-height-alt: 1.3pt; tab-stops: list 18.0pt; mso-list: l90 level1 lfo69"><SPAN
lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: Symbol; mso-bidi-font-size: 10.0pt">¨<SPAN
style="FONT: 7pt 'Times New Roman'">
</SPAN></SPAN><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">观察窗口<SPAN
lang=EN-US>(WATCH WINDOW):</SPAN></SPAN><BR
style="mso-ignore: vglayout" clear=all><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">在VIEW
菜单,选择Debug window 命令,Watch window 子命令。这时变量窗口将出现在屏幕上。</SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 24pt; mso-line-height-alt: 1.3pt"
align=center><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><BR></SPAN><SPAN
style="mso-ignore: vglayout"><IMG height=277
src="book_text11.files/book_t17.gif" width=369
v:shapes="_x0000_s1041"></SPAN><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><BR>图<SPAN
lang=EN-US>4.17</SPAN></SPAN></P>
<P> <SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">在图4.17的观察窗口中双击Name栏的某一空行,输入你要查看的变量名或表达式。</SPAN></P>
<P align=center><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'"><O:P></O:P></SPAN><SPAN
style="mso-ignore: vglayout"><IMG height=279
src="book_text11.files/book_t18.gif" width=373
v:shapes="_x0000_s1042"></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 24pt; TEXT-ALIGN: center; mso-line-height-alt: 1.3pt; mso-outline-level: 1"
align=center><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">图<SPAN
lang=EN-US>4.18<O:P> </O:P></SPAN></SPAN></P>
<P class=MsoNormal
style="TEXT-INDENT: 24pt; mso-line-height-alt: 1.3pt"><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">回车后你将会看到对应的值。观察窗口可有多页,分别对应于标签<SPAN
lang=EN-US>Watch1,Watch2,Watch3等等。假如你输入的表达式是一个结构或是一个对象,你可以用鼠标点取表达式右边的形如
+ ,以进一步观察其中的成员变量的值如图4.19。<O:P> </O:P></SPAN></SPAN></P>
<P align=center><SPAN lang=EN-US
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA"><BR
style="PAGE-BREAK-BEFORE: always" clear=all></SPAN><SPAN
style="mso-ignore: vglayout"><IMG height=282
src="book_text11.files/book_t19.gif" width=376
v:shapes="_x0000_s1043"></SPAN>
<P class=MsoNormal
style="TEXT-INDENT: 24pt; TEXT-ALIGN: center; mso-line-height-alt: 1.3pt"
align=center><SPAN
style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.0pt; mso-hansi-font-family: 'Times New Roman'">图<SPAN
lang=EN-US>4.19<O:P> </O:P></SPAN><
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -