In the web-browser, save this file as 'Text' type.
//*****************************************************************
// Copyright policy is GNU/GPL but additional restriction is
// that you include author's name and email on all copies
// Author : Al Dev Email: alavoor@yahoo.com
//*****************************************************************
/****************************************************************
Program for debugging C++/C programs
*****************************************************************/
#define print_log(AA, BB, CC, DD, EE) ((void) 0)
#ifdef DEBUG
#include <iostream>
#include <string>
//#include <assert.h> // assert() macro which is also used for debugging
#define LOG_YES true // print output to log file
#define LOG_NO false // Do not print output to log file
// Debugging code
// Use debug2_ to output result to a log file
#define debug_(NM, VL) (void) ( local_dbg(NM, VL, __FILE__, __LINE__) )
#define debug2_(NM, VL, LOG_FILE) (void) ( local_dbg(NM, VL, __FILE__, __LINE__, LOG_FILE) )
void local_dbg(char name[], char value[], char fname[], int lineno, bool logfile= false);
void local_dbg(char name[], string value, char fname[], int lineno, bool logfile= false);
void local_dbg(char name[], int value, char fname[], int lineno, bool logfile= false);
void local_dbg(char name[], unsigned long value, char fname[], int lineno, bool logfile= false);
void local_dbg(char name[], float value, char fname[], int lineno, bool logfile= false);
#else //--------> else
#define debug_(NM, VL) ((void) 0)
#define debug2_(NM, VL, LOG_FILE) ((void) 0)
#endif // DEBUG