杭州企业网站建设方案,网站建设费税率多少,网站效果图用什么做,做爰全过程免费的视频网站爱背景1.1.前提知识程序的发布方式有两种#xff0c;debug模式和release模式Linux gcc/g出来的二进制程序#xff0c;默认是release模式 要使用gdb调试#xff0c;必须在源代码生成二进制程序的时候, 加上 -g 选项windows上的调试方法有区别吗#xff1f;1.调试思路是一样的2… 背景1.1.前提知识 程序的发布方式有两种debug模式和release模式 Linux gcc/g出来的二进制程序默认是release模式 要使用gdb调试必须在源代码生成二进制程序的时候, 加上 -g 选项windows上的调试方法有区别吗1.调试思路是一样的2.调试的操作方式一定是不一样的命令行调试开始使用2.1.安装gdbsudo yum install -y gdb2.2.使用gdb binFile 退出 ctrl d 或 quit /q2.2.1.显示binFile源代码list/l 一般list/l会记住上一次显示的行数接着上次的位置往下列每次列10行。list/l 【行号】从行号开始往下列10行。list/l 【函数名】 列出某个函数的源代码。列10行。2.2.2.添加/删除断点break/b)break/b 行号在某一行设置断点.delete breakpoints / d删除所有断点 delete breakpoints / d 【n】删除序号为n的断点n不是行号info b 查看断点info(或i) breakpoints参看当前设置了哪些断点disable breakpoints禁用断点遇到断点就不会停下来 enable breakpoints / enable启用断点disable breakpoints 【序号】禁用某一个断点。enable breakpoints / enable 【序号】启用某一个断点2.2.3.查看info)p)displayinfo b/break 查看当前所有断点。info/i locals查看当前栈帧局部变量的值。p 【变量名】打印变量display 变量名跟踪查看一个变量每次停下来都显示它的值 。也可以查看地址undisplay全部取消对先前设置的那些变量的跟踪。undisplay 【序号】取消对这个变量的跟踪。2.2.4.运行调试r/runn/next)s/stopc/continuerun/r从开始连续而非单步执行程序调试运行n/next单条执行。 逐过程s/step进入函数调用逐语句continue/c从当前位置开始连续而非单步执行程序也就是从当前位置开始到下一个断点或者结束。finish执行完当前函数然后停下来等待命令 。可以帮我们快速的甄别那个函数出问题了。until 【行号】跳至X行。可能不是预期行去掉空格/无用的符号2.2.5.查看调用堆栈btbt 查看调用堆栈。2.2.6.修改参数的值set 【var】修改变量的值根据我们的需要修改临时变量的值 理解3.1.f5 / ctrlf5 / shiftf5f5调试运行有断点直接停下来。 r/runctrlf5不调试执行在断点不停。shiftf5取消调试。q/quitf11逐个语句s/step)f10逐过程n/next