Литмир - Электронная Библиотека
Содержание  
A
A

  errno = 0;

  execerror(s, "result out of range");

 }

 return d;

}

3.7.19

mbox

From: Polyhedron Software Ltd <[email protected]>

To: ">INTERNET:[email protected]" <[email protected] >

Subject: Message from Internet

Date: 10 May 91 04:07:07 EDT

Message-Id: <"910510080707 100013.461 CHE27-1"@CompuServe.COM>

Got your message. I'll pass it on to Tony. We haven't noticed any

errors at all in CompuServe mail, so far.

Regards

Graham Wood

From kam Thu May 9 10:58:06 EDT 1991

tony fritzpatrick called from england. he had spoken to you

last week about compuserve.

the number is:

100013,461

this is regarding the HOC6 listing.

he will call you back tomorrow

From pipe!subll276 Fri May 3 10:38:29 EDT 1991

Message to: BK

From: Tony Fitzpatrick

ECL

Highlands Farm

Greys Road

Henley OXON, RG 94 PS

ENGLAND

Telephone: 0491 - 575-989 (country code 45)

FAX: 0491 576 557

1. H would like permission

   (which has already been granted by publisher) to

   use HUC 6 program — commercial software.

2. Is the listing available on floppy disk?

3. Thank you for a very interesting and useful book.

4. He left his fax # and telephone #. He wasn't sure of the country code.

   He would appreciate hearing from you via fax.

sub 11276

3.7.20

symbol.c

#include "hoc.h"

#include "y.tab.h"

static Symbol *symlist =0; /* symbol table: linked list */

Symbol *lookup(s) /* find s in symbol table */

 char *s;

{

 Symbol *sp;

 for (sp = symlist; sp != (Symbol*)0; sp = sp->next)

  if (strcmp(sp->name, s) == 0)

   return sp;

 return 0; /* 0 ==> not found */

}

Symbol *install(s, t, d) /* install s in symbol table */

 char *s;

 int t;

 double d;

{

 Symbol *sp;

 char *emalloc();

 sp = (Symbol*)emalloc(sizeof(Symbol));

 sp->name = emalloc(strlen(s)+1); /* +1 for '\0' */

 strcpy(sp->name, s);

 sp->type = t;

 sp->u.val = d;

 sp->next = symlist; /* put at front of list */

 symlist = sp;

 return sp;

}

char *emalloc(n) /* check return from malloc */

 unsigned n;

{

 char *p, *malloc();

 p = malloc(n);

 if (p == 0)

  execerror("out of memory", (char*)0);

 return p;

}

3.8 Всякая всячина

3.8.1

addup1

awk '{ s += $'$1' }

 END { print s }'

3.8.2.

addup2

awk '

 BEGIN { n = '$1' }

 { for (i = 1; i <= n; i++)

  sum[i] += $i

 }

 END { for (i = 1; i <= n; i++) {

  printf "%6g ", sum[i]

  total += sum[i]

  }

 printf "; total = %6g\n", total

}'

3.8.3

backup

push -v panther $* /usr/bwk/eff/Code

173
{"b":"248117","o":1}