1. 在终端下显示输出一行信息,会自动换行,调试、发布模式都会显示

      1. // 显示: [tbox]: hello world
      2. tb_trace_i("hello world");

      注: 每行输出都带有标记前缀,来表示哪个模块的信息,默认是[tbox], 但也可以通过修改TB_TRACE_PREFIX宏, 来重定义。

    2. 输出调试信息,仅在调试模式下起作用。

      1. // 显示: [tbox]: hello world
      2. tb_trace_d("hello world");

    注: 只有在开启调试模式:make config DEBUG=y的情况,或者模块内部定义了 TB_TRACE_MODULE_DEBUG == 1的时候才会进行输出,否则编译的时候会直接忽略掉。

    1. 输出警告信息,调试、发布模式都会显示

      1. // 显示: [tbox]: [warning]: hello world
      2. tb_trace_w("hello world");
    2. 提示某些功能还没实现。

      1. // 显示: [tbox]: [no_impl]: at func: ..., line: ..., file: ...
      2. tb_trace_noimpl();
    3. 输出子模块标记:

      1. #define TB_TRACE_MODULE_NAME "module"
      2. #include "tbox.h"
      3.  
      4. // 显示: [tbox]: [module]: hello world
      5. tb_trace_i("hello world");
    4. 输出到文件:

      1. tb_trace_mode_set(TB_TRACE_MODE_FILE);
      2. tb_trace_file_set_path("/tmp/log", tb_false);

      就可以输出到/tmp/log中了。

    5. 其他平台输出:在ios和android下,除了会输出到调试终端,还会直接输出到syslog中, 可以通过adb logcat 或者xcode直接查看 ​