嵌入式学习小组
直播中

康大争

7年用户 2205经验值
私信 关注

嵌入式Linux程序调试输出信息的一个小技巧记录

开发嵌入式程序常用的方法有哪几种呢?

回帖(1)

韩冬

2021-12-24 16:24:16
前言:

       无论是Linux开发还是Windows或者Mac os开发,在我们开发项目的过程中,必不可少的就是调试了,特别是开发嵌入式程序,由于资源条件的限制,调试程序变得更为困难。一般常用的由两种方法:

  一:打印输出(包括控制台输出和日志文件输出)
  二:GDB调试器
        对于Linux平台来说,GDB调试命令行界面使用起来确实很不方便。所以一般更常用的是输出日志文件的方法,下面简单记录下调试输出信息的一个小技巧:
       预定义调试输出宏+封装打印函数

举个栗子:
编写一个简单的测试程序test.c,
代码如下:

#include

#define DEBUG         //预定义调试宏

#ifdef DEBUG          //封装打印函数
        #define PRINT (printf("%s %s %d: ",__FILE__,__FUNCTION__,__LINE__),printf)
#else
        #define PRINT
#endif

void run(int step){
        PRINT("%s:%dn","I run 100m need: ",step);
}

int main(){
        int i = 6;
        PRINT("%sn","hello test!");    //调用封装好的打印函数

        run(300);

        return 0;
}
在Linux下编译:
         gcc test.c -o test
执行程序:
        ./test
打印输出:
         
可看到输出符合我们的预期,大大简化了调试打印的过程。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分