位置: 编程技术 - 正文

如何使用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 正式版

  • 借款利息收入计提分录
  • 工资不纳税项目
  • 工程材料票抵扣比例
  • 可以从开发成本直接结转至主营业务成本吗
  • 劳务费发票入账在所得税中有何规定
  • 个体户认定一般纳税人
  • 成品盘盈盘亏的会计分录
  • 以股东投资为基础
  • 公司土地转让另外公司
  • 房租收入应该计入什么
  • 金融机构对服务的要求
  • 2018年高新技术企业所得税
  • 国税申报数据能修改吗
  • 职工福利进项税可以抵扣吗
  • 筹建期员工社保分录
  • 高速公路过路费查询网站
  • 公账转私账可以撤销吗
  • 融资租赁的利息可以税前扣除吗
  • 如何看云空间的内容
  • win11任务栏如何设置在最左边
  • 贷款减值准备和减值准备支出的区别
  • 公司内部收据能做凭证吗
  • 如何安全的处置电子邮件
  • 索尼vpcea200c笔记本
  • 期末坏账准备的计算
  • 缴住房公积金会计分录怎么写
  • 奥林匹克国家公园
  • 增值税待认证进项税额
  • php执行流程
  • thinkphp接收ajax数据
  • php分层架构
  • 微信小程序从零
  • docker windows -v
  • nmcli命令全称
  • 货到付款付的是什么费用
  • 个税计税周期 一年
  • Python函数怎么返回
  • 普通发票和增值税发票的税率
  • 税款追征期三年
  • 独资企业的税收政策
  • 车间机器设备修理费用计入什么科目
  • 房产互换如何交税费
  • 供应商费用是什么
  • 企业与企业之间通过互联网进行产品
  • 公对公打款发票
  • 固定资产报废时,后续未折旧额计入哪里
  • 不交社保的职业
  • 施工企业工人工作总结
  • 中小企业的资产负债率均值是多少
  • 如果没有抵扣要交多少税
  • 辅助生产费用如何判断受益多少事指什么
  • 已退货对方不开红字
  • 常见开具发票错误详解是?
  • 税控盘开发票怎么测试打印机?
  • 税审报告一定要税所主任签吗
  • 个人如何成立公司
  • 2023年职工社保缴费标准一览表
  • 总分类账建账顺序
  • mysql 5.5 5.6
  • mysql 5.7.13 winx64安装配置方法图文教程(win10)
  • windows server vista
  • 新手怎样
  • windows 11安全模式
  • 把mac屏幕切换到桌面desktop
  • 显示隐藏文件也看不到
  • jusched.exe是什么进程
  • 屏幕画面颠倒
  • win7激活2020
  • 博主是re_mini_scene
  • 图片加密后怎么找不到
  • css优化提高性能的方法有哪些
  • js鼠标移入事件
  • web标准有哪些方面
  • 脚本被删除
  • js 文件缓存
  • 国税怎么打印发票
  • 福建税务总局电话
  • 集美区区委书记什么级别
  • 12月份买的车10月打电话让我去保养
  • 河南出名歌手
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设