CCL Home Page
Up Directory CCL getword.c
/*
 * getword.c - getword() and related functions
 */

#include 
#include 

char word[200];

static int hit_eof = 0;
static char line[200];
static char *lp;

void
init_getword (void)
{
  char *s;

  if (gets (line) == NULL)
    {
      hit_eof = 1;
      return;
    }
  if ((s = strchr (line, '#')) != NULL)
    *s = '\0';
  lp = line;
}

int
getword (void)
{
  char *s;

  s = word;
  while (*lp == ' ' || *lp == '\t')
    lp++;
  while (*lp == '\0')
    {
      init_getword ();
      if (hit_eof)
	return 1;
      while (*lp == ' ' || *lp == '\t')
	lp++;
    }
  while (*lp != ' ' && *lp != '\t' && *lp != '\0')
    *s++ = *lp++;
  *s = '\0';
  return 0;
}

int
getint (void)
{
  int i;

  if (getword ())
    return 0;
  if (sscanf (word, "%d", &i) < 1)
    i = 0;
  return i;
}

double
getdouble (void)
{
  double x;

  if (getword ())
    return 0.0;
  if (sscanf (word, "%lf", &x) < 1)
    x = 0.0;
  return x;
}
Modified: Mon May 19 16:00:00 1997 GMT
Page accessed 7194 times since Sat Apr 17 22:46:13 1999 GMT