开发者社区> morixinguan> 正文

Window,Linux应用程序调试法----写文件调试程序法

简介: Linux,一切皆文件,那么在Android系统本身,也是Linux+java罢了,也是在Linux的运行环境下。 通常,我们在调试程序的都会使用printf。 在Android中,我们会去使用logcat,现在,给大家介绍一种常用的调试方法,debug写文件调试法。
+关注继续查看

Linux,一切皆文件,那么在Android系统本身,也是Linux+java罢了,也是在Linux的运行环境下。

通常,我们在调试程序的都会使用printf。

在Android中,我们会去使用logcat,现在,给大家介绍一种常用的调试方法,debug写文件调试法。

在Android系统中,调试一个C应用程序可谓是极其不方便,为了保存log的完整性,于是,写文件调试法可以发挥重大的作用,下面给出一个例子:

#include <stdio.h>
FILE * wirte_debug_file=NULL;
//将调试信息写到文件中 
void write_Debug_to_file(char *debug_log)
{
	if(wirte_debug_file==NULL)
		wirte_debug_file = fopen("debug.txt","wt");
	if(wirte_debug_file==NULL)
		return;
	fputs(debug_log,wirte_debug_file);
}

int main(void)
{
	int i ;
	char buf[100];
	for(i = 0 ; i < 10 ; i++)
	{
		sprintf(buf,"i:%d\n",i);
		//写调试信息 
		write_Debug_to_file(buf);
	}
	if(wirte_debug_file != NULL)
		fclose(wirte_debug_file);
	return 0  ;
}
运行结果:

我们打开debug.txt后,可以看到:

i:0
i:1
i:2
i:3
i:4
i:5
i:6
i:7
i:8
i:9
打印的数据被保存在这个文件中,甚至,我们可以将代码段执行到哪一句都可以写到log中去,回头再来分析问题。

这是一种非常好的调试手段。


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
linux下,popen函数的应用举例
linux下,popen函数的应用举例
27 0
Linux系统安全与应用
系统安全问题一直存在着,当系统往往出现安全漏洞的时候会对我们的系统运行有一定程度的影响,严重的话还会造成系统瘫痪等问题。
60 0
Linux 温习(四): Systemd 分析与应用
一个运行起来的程序被为 进程,进程的英语是 process
22 0
Linux系统安全及应用
⭐本文介绍⭐ 作为一种开放源代码的操作系统,Linux服务器以其安全,高效和稳定的显著优势而得以广泛应用。本文主要从账号安全控制、系统引导和登录控制的角度,介绍Linux系统安全优化的点点滴滴;还将介绍基于Linux环境的弱口令检测、网络扫描等安全工具的构建和使用,帮助管理员查找安全隐患,及时采取有针对性的防护措施。
25 0
OpenJDK8 JAVA应用窗口在不同缩放比例下的表现(Linux)
OpenJDK8 JAVA应用窗口在不同缩放比例下的表现(Linux)
18 0
如何让应用出现在LINUX的右键/打开方式/更多应用
如何让应用出现在LINUX的右键/打开方式/更多应用
25 0
LINUX右键打开方式,如何同时存在多种应用?
LINUX右键打开方式,如何同时存在多种应用?
15 0
zynq操作系统: Linux下异步通知的应用
在使用阻塞或者非阻塞的方式来读取驱动中某些值都是应用程序主动读取的,对于非阻塞方式来说还需要应用程序通过 poll 函数不断的轮询。最好的方式就是驱动程序能主动向应用程序发出通知,报告自己可以访问,然后应用程序在从驱动程序中读取或写入数据。 Linux 提供了异步通知这个机制来完成此功能
34 0
zynq操作系统: Linux下Misc设备的添加应用
Misc 的意思是混合、杂项的,因此misc设备也叫做杂项设备(杂散设备)
43 0
LINUX中用C获得当前执行应用的所在路径
LINUX中用C获得当前执行应用的所在路径
27 0
+关注
morixinguan
ITGEGE在线教育嵌入式开发讲师。 CSDN博客专家、CSDN-Linux特邀编辑、CSDN博乐、CSDN学院讲师,目前从事嵌入式开发领域,从事与单片机,Linux,android相关的产品开发。
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Decian GNU/Linux安全合规之路
立即下载
从 Linux 系统内核层面来解决实际问题的实战经验
立即下载
冬季实战营第二期:Linux操作系统实战入门
立即下载