home *** CD-ROM | disk | FTP | other *** search
/ ftp.disi.unige.it / 2015-02-11.ftp.disi.unige.it.tar / ftp.disi.unige.it / pub / .person / CataniaB / teach-act / esempi / Comp-Sep / analiz-less.c next >
C/C++ Source or Header  |  1999-04-29  |  700b  |  45 lines

  1. #include <stdio.h>
  2.  
  3. #include "getsym.h"
  4.  
  5. int main()
  6. {
  7.   symbol s;
  8.   
  9.   do
  10.     {
  11.       s = getsym();
  12.       switch (s.kind)
  13.     {
  14.     case PLUS:
  15.       printf("\nPlus symbol\n");
  16.       break;      
  17.     case MINUS:
  18.       printf("\nMinus symbol\n");
  19.       break;         
  20.     case TIMES:
  21.       printf("\nTimes symbol\n");
  22.       break;       
  23.     case DIV:
  24.       printf("\nDiv symbol\n");
  25.       break;      
  26.     case EQUAL:
  27.       printf("\nEqual symbol\n");
  28.       break;      
  29.     case LPAR:
  30.       printf("\nLeft par symbol\n");
  31.       break;      
  32.     case RPAR:
  33.       printf("\nRight par symbol\n");
  34.       break;      
  35.     case NUMBER:
  36.       printf("\nInteger: %d\n",s.value);
  37.       break;
  38.     default:
  39.       printf("\n Fatal error \n");
  40.       break;
  41.     }
  42.     }
  43.   while (s.kind != EQUAL);
  44. }
  45.