wordpress文章迁移到dz论坛,淘宝seo软件,大麦网网站内似网站开发,网站建设技能考试确保在Debug模式下而不是Release
打断点(break point)
直接在有代码的行前单击#xff0c;会出现红色的点(再次单击会取消)#xff1b;或者光标停留在某行#xff0c;按F9
这意味着程序当执行到这一行时会终止
在打完断点后点击”本地Windows调试器“或者按F5
往下翻会有代码…确保在Debug模式下而不是Release
打断点(break point)
直接在有代码的行前单击会出现红色的点(再次单击会取消)或者光标停留在某行按F9
这意味着程序当执行到这一行时会终止
在打完断点后点击”本地Windows调试器“或者按F5
往下翻会有代码供测试
界面如下在工具栏有这样三个操作逐语句(step into)步入进函数看看这个函数做了什么——F11逐过程(step over)从当前函数跳到下一行代码——F10跳出(step out)跳出当前函数回到调用这个函数的位置——ShiftF11
测试代码
#includeiostream
using namespace std;
int main() {int a 8;a;const char* string Hello;for (int i 0; i 5; i) {const char c string[i];cout c endl;}cout Hello World endl;
}首先我们来看a的值显示10016你可能会疑惑为什么是10016为什么不是10086 为什么不是8
这是因为虽然箭头此时指向这条语句但并不意味着已经运行了这行代码而是我们正要运行它
所以调试器显示的是a将要被设置的内存位置的数字
我们没有把这个变量设置成任何东西它只是未初始化的内存
看到这里你就明白了为什么你的a的值既不是8也不是10016
内存视图(memory view)
调试-窗口-内存-内存1Debug-windows-memory-memory1
输入a 就被带到变量a的内存地址
按F10后我们可以观察到a的值变为了8局部变量/自动窗口
四个字节的内存也被设置为8(内存1): 08 00 00 00
再按F10a变为了9
再按F10string也发生了变化。前面的是它的地址
将其复制到内存1中查找48 65 6c 6c 6f 这是ASCII码翻译过来就是Hello
如果你不想一个个按F10而是让程序接着运行到某一句就在那一句前打断点按F5或continue
另外你还可以右键-转到反汇编来查看CPU指令
以上就是全部内容希望你能很好的应用Debug
视频https://www.youtube.com/watch?v0ebzPwixrJA