Download mychar 에서 모든 프로그램들을 하나의 tar.gz 화일로 다운로드받을 수 있다. 이 화일을 받으려면 웹브라우저에서 이 화일을 'Text' 타입으로 저장한다.
//*****************************************************************
//저작권은 GNU/GPL 에 있지만 저자의 이름과 이메일은 모든 복사본에
//포함시켜야 한다.
//저자: Al Dev 이메일: alavoor@yahoo.com
//*****************************************************************
/*
** In your main() function put -
char p_name[1024];
sprintf(p_name, "PROGRAM_NAME=%s", argv[0]);
putenv(p_name);
print_total_memsize(); // in the beginning
......
......
print_total_memsize(); // in the end
*/
/* Use zap instead of delete as this will be very clean!!
** Use do while to make it robust and bullet-proof macro
*/
#define zap(x) do { if (x) { delete(x); x = 0; } } while (0)
void *local_my_malloc(size_t size, char fname[], int lineno);
char *local_my_realloc(char *aa, size_t size, char fname[], int lineno);
short *local_my_realloc(short *aa, size_t size, char fname[], int lineno);
void local_my_free(void *aa, char fname[], int lineno);
void local_print_total_memsize(char fname[], int lineno);
#define my_free(NM) (void) (local_my_free(NM, __FILE__, __LINE__))
#define my_malloc(SZ) (local_my_malloc(SZ, __FILE__, __LINE__))
#define my_realloc(NM, SZ) (local_my_realloc(NM, SZ, __FILE__, __LINE__))
#define print_total_memsize() (void) (local_print_total_memsize(__FILE__, __LINE__))
#ifdef DEBUG //------------> DEBUG
#else //------------> DEBUG
#define call_check(AA, BB, CC, DD) ((void) 0)
#define call_free_check(AA, BB, CC) ((void) 0)
#define remove_ptr(AA, CC, DD) ((void) 0)
#endif //------------> DEBUG