home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Amiga 5 / MA_Cover_5.iso / ppc / atari / atari800-0.8.6 / prompts.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-05-10  |  1.1 KB  |  78 lines

  1. #include <stdio.h>
  2. #include <ctype.h>
  3.  
  4. #include "prompts.h"
  5.  
  6. static char *rcsid = "$Id: prompts.c,v 1.4 1998/02/21 14:51:54 david Exp $";
  7.  
  8. void GetString(char *message, char *string)
  9. {
  10.     char gash[128];
  11.  
  12.     printf(message, string);
  13.     gets(gash);
  14.     if (strlen(gash) > 0)
  15.         strcpy(string, gash);
  16. }
  17.  
  18. void GetNumber(char *message, int *num)
  19. {
  20.     char gash[128];
  21.  
  22.     printf(message, *num);
  23.     gets(gash);
  24.     if (strlen(gash) > 0)
  25.         sscanf(gash, "\n%d", num);
  26. }
  27.  
  28. void YesNo(char *message, char *yn)
  29. {
  30.     char gash[128];
  31.     char t_yn;
  32.  
  33.     do {
  34.         printf(message, *yn);
  35.         gets(gash);
  36.  
  37.         if (strlen(gash) > 0)
  38.             t_yn = gash[0];
  39.         else
  40.             t_yn = ' ';
  41.  
  42.         if (islower(t_yn))
  43.             t_yn = toupper(t_yn);
  44.     } while ((t_yn != ' ') && (t_yn != 'Y') && (t_yn != 'N'));
  45.  
  46.     if (t_yn != ' ')
  47.         *yn = t_yn;
  48. }
  49.  
  50. void RemoveSpaces(char *string)
  51. {
  52.     char *ptr = string;
  53.  
  54.     while (*string) {
  55.         switch (*string) {
  56.         case ' ':
  57.         case '\n':
  58.         case '\t':
  59.             string++;
  60.             break;
  61.         default:
  62.             *ptr++ = *string++;
  63.             break;
  64.         }
  65.     }
  66.  
  67.     *ptr = '\0';
  68. }
  69.  
  70. void RemoveLF(char *string)
  71. {
  72.     int len;
  73.  
  74.     len = strlen(string);
  75.     if (string[len - 1] == '\n')
  76.         string[len - 1] = '\0';
  77. }
  78.