Listing 9

/*
 * ln_seq.cpp - line number sequence implementation
 */
#incLude <stdio.h>

#incLude "ln_seq.h"

ln_seq::ln_seq()
   {
   first = Last = 0;
   }

void Ln_seq::add(unsigned n)
   {
   listnode *p;
   if (first == 0 || last->number != n)
      {
      p = new listnode;
      p->number = n;
      p->next = NULL;
      if (first == 0)
         first = p;
      else
         last->next = p;
      last = p;
      }
   }
void ln_seq::print() 
   {
   listnode *p;
   
   for (p = first; p != 0; p = p->next)
      printf("%4d ", p->number);
   }