You can download all programs as a single tar.gz file from Download mychar . To get this file, 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 //***************************************************************** #ifdef DEBUG // ONLY if DEBUG is defined then these functions below are needed #include "debug.h" //#include "log.h" // Variable value[] can be char, string, int, unsigned long, float, etc... void local_dbg(char name[], char value[], char fname[], int lineno, bool logfile) { if (value == NULL) return; if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %s\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], string value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %s\n", fname, lineno, name, value.c_str()); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value.c_str() << endl; } void local_dbg(char name[], int value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %d\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], unsigned int value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %u\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], long value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %d\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], unsigned long value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %u\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], short value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %d\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], unsigned short value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %u\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], float value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %f\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } void local_dbg(char name[], double value, char fname[], int lineno, bool logfile) { if (logfile == true) print_log("\nDebug %s : Line: %d %s is = %f\n", fname, lineno, name, value); else cout << "\nDebug " << fname << ": Line: " << lineno << " " << name << " is = " << value << endl; } // You add many more here - value can be a class, ENUM, datetime, etc... #endif // DEBUG