debug怎么用debug c语言

debug  时间:2021-08-24  阅读:()

怎么用debug c语言

简单来说,有两种方式,一种是源码debug,即分析源码来找出bug位置,一般使用printf()打印出程序执行每一步的信息,一种是可执行文件debug,需要使用调试器来进行。

1、源码debug 类似于下面的源码,主要通过程序执行时输出的信息,来定位bug出现的位置,然后再修改源码。

#include?<stdio.h> void?f()?{?;?} int?main() { #ifdef?_DEBUG printf("start?main?function! "); #endif void?f(); #ifdef?_DEBUG printf("leave?main?function?! "); #endif return?0; }2、可执行文件调试,windows平台常用的就是vs/vc自带的调试,另外一个就是微软自家开发的调试器windbg。

Linux平台以gdb为常用。

IDE自带的调试器以VC6.0为例,编写完代码后,按快截键盘F11,即可进入调试,此时右键,选择“go to ?disassembly"即可查看到程序的反汇编代码 。

一般这种情况,主要是为了对C语言进行反汇编学习。

Windbg的功能非常多,可以进行源码调试、可以调试可执行文件、还可以进行内核调试,也可以调试dump文件,用的多了,自然熟悉,要调试可执行文件,只需要点击”File"在弹出的对话框中选择“Open Executeable",然后找到自己要调试的程序即可。

Linux常用的是Gdb调试器,值得注意的是,要使用gdb调试,在使用或者g++编译C/c++文件时,需要添加-g参数才可以生成符号表。

下图是用gdb分析C++中变量分布的一张截图,大体上看一下长什么样,用的多了自然熟悉,不需要可以去学习。

BuyVM迈阿密KVM上线,AMD Ryzen 3900X+NVMe硬盘$2/月起

BuyVM在昨天宣布上线了第四个数据中心产品:迈阿密,基于KVM架构的VPS主机,采用AMD Ryzen 3900X CPU,DDR4内存,NVMe硬盘,1Gbps带宽,不限制流量方式,最低$2/月起,支持Linux或者Windows操作系统。这是一家成立于2010年的国外主机商,提供基于KVM架构的VPS产品,数据中心除了新上的迈阿密外还包括美国拉斯维加斯、新泽西和卢森堡等,主机均为1Gbps带...

LightNode($7.71/月)香港cn2精品线路

LightNode官网LightNode是一家位于香港的VPS服务商.提供基于KVM虚拟化技术的VPS.在提供全球常见节点的同时,还具备东南亚地区、中国香港等边缘节点.满足开发者建站,游戏应用,外贸电商等应用场景的需求。为用户带来高性能服务器以及优质的服务的同时还提供丰厚的促销活动,新用户注册最高送$20。注册用户带新客即可得10%返佣。商家支持PayPal,支付宝等支付方式。官网:https:/...

vpsdime:夏日促销活动,美国达拉斯VPS,2G内存/2核/20gSSD/1T流量,$20/年

vpsdime怎么样?vpsdime是2013年注册的国外VPS主机商,实际上他还有一系列的其他域名站点如Winity.io, Backupsy,Cloudive, Virtora等等,母公司“Nodisto IT”相对来说还是很靠谱了的商家。VPSDime主要提供各种高配低价VPS套餐,其中Linux VPS和存储VPS基于OpenVZ架构,高级VPS基于KVM。VPSDime在上个季度的Low...

debug为你推荐
u盾证书“U盾”和“数字证书”有什么区别?java教程pdfJava操作pdf表格数据2g内存条2G的内存条和8G的内存条有什么不同照片ps是什么意思PS照片是什么意思?上海网络维护公司上海有没有专业公司网络维护的啊云电视是什么意思4K2K是什么意思?云电视是什么意思怎样连接云电视wps表格数据恢复WPS工作表意外关闭如何恢复公司注册如何办理怎么才能注册公司?hadoop大数据平台大数据与Hadoop之间的关系
长沙服务器租用 服务器租用托管 西安电信测速 堪萨斯服务器 2014年感恩节 gomezpeer sub-process lighttpd 北京双线机房 adroit 服务器硬件防火墙 全能空间 贵阳电信 lamp什么意思 攻击服务器 hostease 深圳主机托管 网站防护 nnt register.com 更多