home *** CD-ROM | disk | FTP | other *** search
/ Microsoft Programmer's Library 1.3 / Microsoft-Programers-Library-v1.3.iso / sampcode / win_lrn / bifflib / finder.c < prev    next >
Encoding:
C/C++ Source or Header  |  1988-10-20  |  1.5 KB  |  66 lines

  1. #include "stdio.h"
  2.  
  3. /* This function displays the contents of a specific spreadsheet cell */
  4. main()
  5. {
  6.  
  7.     char filename[12];
  8.     
  9.     int open_BIFF(), find_BIFF(), close_BIFF();
  10.     int type, row, col;
  11.     int handler(int, char *, int);
  12.  
  13.         
  14.     printf("Enter filename\n");
  15.     scanf("%s", filename);
  16.     printf("Enter type\n");
  17.     scanf("%d", &type);
  18.     printf("Enter row\n");
  19.     scanf("%d", &row);
  20.     printf("Enter col\n");
  21.     scanf("%d", &col);
  22.     
  23.     open_BIFF(filename);
  24.     find_BIFF(type, row, col, handler);
  25. }
  26.  
  27. int handler(int type, char *data, int length)
  28. {
  29.     int row, column, i;
  30.     unsigned int value;
  31.     double val;
  32.     char *label;
  33.     
  34.     int get_blank(char *, int *, int *);
  35.     int get_integer(char *, int *, int *, unsigned int *);
  36.     int get_number(char *, int *, int *, double *);
  37.     int get_label(char *, int *, int *,  char **);
  38.     int get_bool(char *, int *, int *, int *);
  39.  
  40.  
  41.     switch (type) {
  42.         case 1:
  43.         get_blank(data, &row, &column);
  44.         printf("In row %d column %d is a blank\n", row, column); 
  45.         break;
  46.         case 2:
  47.         get_integer(data, &row, &column, &value);
  48.         printf("In row %d column %d is %d\n", row, column, value); 
  49.         break;
  50.         case 4:
  51.         get_number(data, &row, &column, &val);
  52.         printf("In row %d column %d is %f\n", row, column, val); 
  53.         break;
  54.         case 8:
  55.         get_label(data, &row, &column, &label);
  56.         printf("In row %d column %d is %s\n", row, column, label); 
  57.         break;
  58.         case 16:
  59.         get_bool(data, &row, &column, &value);
  60.         printf("In row %d column %d is %d\n", row, column, value); 
  61.         break;
  62.     }
  63.     
  64. }
  65.  
  66.