home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 642a.lha / huffman_v1.0 / test.c < prev   
C/C++ Source or Header  |  1992-01-18  |  686b  |  42 lines

  1. #include <stdio.h>
  2. #include <time.h>
  3.  
  4. #define MACRO 0
  5.  
  6. typedef struct node_ {
  7.   struct node_ *left, *right;
  8.   int c;
  9. } node;
  10.  
  11. #define MAX 10000
  12.  
  13. #define freenodes() avail = 0
  14. static node memory[MAX];
  15. static int avail = 0;
  16. #if MACRO
  17. #define mknode() (memory[avail].left = memory[avail].right = NULL, &memory[avail++])
  18. #else
  19. node *mknode (void)
  20. {
  21.  memory[avail].left = memory[avail].right = NULL;
  22.  return (&memory[avail++]);
  23. }
  24. #endif
  25.  
  26. main()
  27. {
  28.  int i, j;
  29.  node *p;
  30.  clock_t start, end;
  31.  
  32.  start = clock ();
  33.  for (j = 0; j < 100; j++)
  34.  {
  35.    for (i = 0; i < MAX; i++)
  36.      p = mknode ();
  37.    freenodes ();
  38.  }
  39.  end = clock ();
  40.  
  41.  printf ("%ld / %ld s\n", (long) (end - start), (long)CLK_TCK);
  42. }