Header-only debug output for C/C++ that can be used as a drop-in replacement for standard output functions.
It's recommended to define DO_DEBUG using your build system or compiler flags, for example, -DDO_DEBUG for gcc/g++. Otherwise, DO_DEBUG MUST be defined before debug_output is first #included.
More info in main.c and main.cpp which serve as examples and tests.