加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_潮州站长网 (http://www.0768zz.com/)- 物联安全、建站、操作系统、云计算、数据迁移!
当前位置: 首页 > 教程 > 正文

自定义的Qt程序打印调试信息的技巧

发布时间:2021-12-16 12:52:45 所属栏目:教程 来源:互联网
导读:在程序的开发过程中,往往需要添加打印消息,来确定程序Bug的来源。工作的要求是使用qmake生成Makefile, 然后,再使用make来进行构建目标程序。 1.首先,定义自己的打印函数,比如: #ifndef SHINECOMMON_H #define SHINECOMMON_H #include stdio.h #ifdef S

在程序的开发过程中,往往需要添加打印消息,来确定程序Bug的来源。工作的要求是使用qmake生成Makefile,
 
然后,再使用make来进行构建目标程序。
 
1.首先,定义自己的打印函数,比如:
 
#ifndef SHINECOMMON_H   
#define SHINECOMMON_H   
#include <stdio.h>   
  
#ifdef SHINEDEBUG   
        #define SHINE_dputs(str) do{ printf("%s %s %d: %sn", __FILE__, __func__, __LINE__, str); }while(0);   
        #define SHINE_dprintf(fmt, args...) do{ printf("%s, %s, %d: "fmt"n", __FILE__, __func__, __LINE__, ##args); }while(0);   
#else   
        #define SHINE_dputs(str) do{}while(0);   
        #define SHINE_dprintf(fmt, args...) do{}while(0);   
#endif   
  
#endif // SHINECOMMON_H  
2. 在想要使用打印调试信息的文件中包含上面的头文件,或者拷贝打印函数进去
 
在想要打印信息的地方直接调用 SHINE_dputs() 就可以,比如:
 
SHINE_dprintf("%s, %x, %s, %f", "Just for test", 100010, "abcdefg", 1.23234);  
SHINE_dputs("Just for test too");  
3. 为了优化Qt程序在嵌入式平台上面的性能,最好确认一下.pro文件中是否有如下的配置:
 
CONFIG += qt embeded release   
 
如果,没有最好添加进去。
 
4. 运行 qmake "DEFINES += SHINEDEBUG" .
 
把其中的SHINEDEBUG替换成你定义的宏即可。 这样会生成Makefile。
 
这时,可以看一下Makefile,里面DEFINES就会包含我们添加的宏
 
5. make 构建我们的目标程序
 
上面,这5步就可以构建打印调试信息的程序,如果我们想去掉,只需要重新运行qmake(注意不加参数)即可。

(编辑:我爱制作网_潮州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读