位置: 编程技术 - 正文

如何使用GDB调试PHP程序(gdb调试工具的使用)

编辑:rootadmin

推荐整理分享如何使用GDB调试PHP程序(gdb调试工具的使用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何使用gdb调试程序,如何使用gdb调试程序,如何使用gdb调试段错误,如何gdb调试动态启动的进程,如何使用gdb调试段错误,如何使用gdb调试ndpi reader源码,如何使用gdb调试程序错误,如何使用gdb调试段错误,内容如对您有帮助,希望把文章链接给更多的朋友!

一般来说,GDB主要完成下面四个方面的功能:

(1)启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。 (2)可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式) (3)当程序被停住时,可以检查此时你的程序中所发生的事。 (4)动态的改变你程序的执行环境。

1、简介

GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。同时GDB也具有例如ddd这样的图形化的调试端。

2、调试C/C++程序

直接上代码了

编译

1

g++ k.cpp -g -Wall -Werror -o main

开始调试

设置断点 break linenumber

设置观察点 watch var

可以看到是while那里,导致n越界了,fix

一些快捷命令

l ? listp ? print print {variable}c ? continues ? stepb - break break line_number/break [file_name]:line_number/break [file_name]:func_namer - runset <var> = <value>watch <var>

ENTER: pressing enter key would execute the previously executed command again.

如何使用GDB调试PHP程序(gdb调试工具的使用)

c/n/s的区别

&#;c or continue: Debugger will continue executing until the next break point.&#;n or next: Debugger will execute the next line as single instruction.&#;s or step: Same as next, but does not treats function as a single instruction, instead goes into the function and executes it line by line

3、调试PHP程序

PHP代码

开始调试,加上断点

加几个断点测试一下 syntax:break [file_name]:func_name,这里大致可以看一下 echo print等不是函数了

然后开始调试

我们还可以使用内置的gdbinit来调试

查看当前堆栈,PHP内核的执行过程

查看代码段

继续执行

到了execute_internal ,可以查看一下当前函数的一个状态

查看当前hashtable

继续执行输出c之后,回车即可,同样可以看到in_array的执行信息

还可以加一下监控watch、设置一些调试变量set 等等

其他的调试工具还有 strace 查看系统调用、ltrace 查看类库的调用、vld查看opcode。

以上内容是小编给大家分享的关于如何使用GDB调试PHP程序的全部内容,希望大家喜欢。

UPUPW 更新 位 Apache 系列 PHP 7.0 正式版 UPUPWPHP特点UPUPWPHP环境集成包Apache最新版全程采用Discuz!X2.5phpwind9.0dedecms5.7wordpress3.5.1等程序的UTF8版作为PHP环境的测试对象进行开发,完美运行以上程序!

thinkPHP中create方法与令牌验证实例浅析 本文实例讲述了thinkPHP中create方法与令牌验证。分享给大家供大家参考,具体如下:thinkPHP的create方法与令牌验证主要是涉及表单的安全性。代码如下:p

微信支付PHP SDK之微信公众号支付代码详解 这里假设你已经申请完微信支付1.微信后台配置如图我们先进行测试,所以先把测试授权目录和测试白名单添加上。测试授权目录是你要发起微信请求的

标签: gdb调试工具的使用

本文链接地址:https://www.jiuchutong.com/biancheng/276275.html 转载请保留说明!

上一篇:PHP MPDF中文乱码的解决方式(php中文乱码解决)

下一篇:UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版

  • 向税务局申请发票增量增额怎么写
  • 个税的计算过程
  • 境外收入个人所得税抵免限额
  • 财政补助资金是什么意思
  • 免抵退税申报资料情况表在哪下载
  • 小规模公司用什么会计准则
  • 国内旅客运输服务电子普通发票
  • 房租合同印花税计算方法
  • 产品不合格重新加工叫什么
  • 核定征收小微企业
  • 怎么看公司行不行
  • 房地产开发企业土地增值税清算
  • 三代手续费入账
  • 精装房不同合同的区别
  • 期末未缴税额为正是什么意思
  • 影响固定资产折旧的有
  • 纳税单位与免税单位共用的房屋由纳税单位全额纳税
  • 自建不动产领用原材料的进项税
  • 什么是短期借款利率
  • 退税应纳税所得额4万交税多少
  • 收购农产品再销售最新税收政策
  • thinkphp5开发教程
  • 个体户年报如何公示
  • win10版本2004和20h2
  • 苹果手机铃声删除在哪里
  • php数组函数,选班长
  • PHP:pg_lo_seek()的用法_PostgreSQL函数
  • 没收逾期未收回的包装物押金
  • 解决脱发的8个方法
  • php curl cookie
  • 详解 HttpServletResponse
  • 蚁群算法是什么
  • 库存现金清零
  • point network
  • 出口退税率和进口税率的区别
  • 差额征税的几种情况
  • 国税代开专票缴纳城建税分录
  • 自动执行python
  • 支付长期借款利息时,应借记什么账户
  • 固定资产有内容限制吗
  • 电子发票的缺点
  • 税控盘开票机号在哪里能查到
  • Windows下MySQL 5.6安装及配置详细图解(大图版)
  • 企业计提固定资产折旧以什么假设为前提
  • 融资租赁业务的账务及涉税处理
  • 以前年度多计提成本怎么处理
  • 在建工程里面的费用最后怎样结转
  • 自用房产税计入什么科目
  • 控制企业的5种方式
  • 专项应付款科目编码是多少
  • 非限定性净资产属于什么科目
  • 首先我们先了解一下作者英语怎么说呢
  • 业务收入和营业收入关系
  • 电子记账凭证需要划线吗
  • 利润分配未分配利润怎么结转
  • 公司购买的车辆
  • 会计错账更正方法口诀
  • 股权转让如何避免转让前债务
  • 赊销是什么意思 视频
  • window组策略
  • win10开始菜单按重启键变成关机
  • centos 任务计划
  • 应用商店windows
  • linux CentOS WEB服务器分区方案
  • win7 开机动画
  • centos安装rclone
  • win7通知区域图标无法设置
  • win10预览版和正式版区别
  • css自学
  • cocos 2d x
  • jquery设置自定义属性
  • 通过Tabs方法基于easyUI+bootstrap制作工作站
  • unity增加组件
  • socketio视频教程
  • python3 random模块
  • 不配合税务检查的法律责任
  • 定期定额纳税申报表应税项应填哪个数
  • 赞美税务工作者的诗句
  • 申报期包括不包括最后一天
  • 公司迁税务所流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设