cdebug 1.3

cdebug 1.3

测试已测试
Lang语言 Obj-CObjective C
许可证 NOASSERTION
发布最后发布2019年10月

Jeong YunWon维护。



cdebug 1.3

  • Jeong YunWon

cdebug是一个小巧的C/Objective-C调试工具

cdebug设计为允许C/Objective-C开发者通过单个文件启用调试模式日志/断言。

  • 可以通过调试宏'DEBUG'轻松启用/禁用功能
  • 条件日志、带日志的断言

请参阅[GitHub]上的文档(http://youknowone.github.com/cdebug

如何设置

为了利用此功能,请执行以下操作之一

  • 插入 #define DEBUG 1
  • 添加编译器选项 -DDEBUG

为了强制禁用此功能而不删除'DEBUG'宏,设置NO_DEBUG

功能

dprintf

dprintf是printf的浅层包装。

dprintf通过选项插入文件名、行号、时间戳、换行符。

dlog

dlog是一个带有测试的dprintf。

dlog仅在第一个参数条件通过测试时触发。例如

  • #define LOG_ERROR 3
  • 定义宏:LOG_WARNING 为 2
  • 定义宏:LOG_INFO 为 1
  • 当 DEBUG_LOGLEVEL 小于 DEBUG_WARNING 时,将触发 dlog(LOG_WARNING, "Warn!");

这只会触发,如果 DEBUG_LOGLEVEL 小于 DEBUG_WARNING。

可以重新定义测试。查看选项中的 DEBUG_LOGTEST。

dassert

dassert 是 assert 的浅包装。

仅在调试模式下触发 dassert。对于发布模式,请使用原始的 'assert'。

dassertlog

当条件为假时,dassertlog 将触发 dprintf 和 dassert。

options

如果你不喜欢默认设置,可以定义选项。

  1. DEBUG_WITH_FILE 用于启用 __FILE__ 宏(默认:启用)
  2. DEBUG_WITH_LINE 用于启用 __LINE__ 宏(默认:启用)
  3. DEBUG_WITH_TIME 用于启用运行时时间戳(默认:启用)
  4. DEBUG_NEWLINE 用于启用插入换行符(默认:启用)
  5. DEBUG_LOGLEVEL 定义 dlog 触发级别(默认:启用)
  6. DEBUG_LOGTEST(LV) 定义 dlog 触发测试。 (默认:LV >= DEBUG_LOGLEVEL)
  7. DEBUG_ASSERT 用于在 dassert 中启用真正的 assert(默认:启用)
  8. DEBUG_PRINTF 定义 printf 函数(默认:stdio.h 中的 printf)
  9. DEBUG_USE_NSLOG 用于启用在 objective-c 语境中自动化的 NSLog 标志(默认:启用)