ING_DB
This commit is contained in:
parent
5b9f337b8d
commit
95dc9881eb
|
|
@ -0,0 +1,23 @@
|
||||||
|
/*
|
||||||
|
** BLOCK CONCATANATE
|
||||||
|
** block `q' of length `n' is concatenated to block
|
||||||
|
** `b2' of length `l2', giving `p'.
|
||||||
|
**
|
||||||
|
** Returns the address of the next byte available after
|
||||||
|
** the end of `p'.
|
||||||
|
*/
|
||||||
|
char *AAappend(q, n, b2, l2, p)
|
||||||
|
register char *q;
|
||||||
|
register int n;
|
||||||
|
register char *p;
|
||||||
|
register char *b2;
|
||||||
|
register int l2;
|
||||||
|
{
|
||||||
|
while (n-- > 0)
|
||||||
|
*p++ = *q++;
|
||||||
|
n = l2;
|
||||||
|
q = b2;
|
||||||
|
while (n-- > 0)
|
||||||
|
*p++ = *q++;
|
||||||
|
return (p);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
/*
|
||||||
|
** STRING CONCATENATE
|
||||||
|
**
|
||||||
|
** The strings `s1' and `s2' are concatenated and stored into
|
||||||
|
** `dst'. It is ok for `s1' to equal `dst', but terrible things
|
||||||
|
** will happen if `s2' equals `dst'. The return value is is a
|
||||||
|
** pointer to the end of `dst' field.
|
||||||
|
*/
|
||||||
|
char *AAconcat(s1, s2, dst)
|
||||||
|
register char *s1;
|
||||||
|
register char *s2;
|
||||||
|
register char *dst;
|
||||||
|
{
|
||||||
|
while (*s1)
|
||||||
|
*dst++ = *s1++;
|
||||||
|
while (*s2)
|
||||||
|
*dst++ = *s2++;
|
||||||
|
*dst = 0;
|
||||||
|
return (dst);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,27 @@
|
||||||
|
/*
|
||||||
|
** LOCAL STRING CONCATENATE
|
||||||
|
** Strings `a' and `b' are concatenated and left in an
|
||||||
|
** internal buffer. A pointer to that buffer is returned.
|
||||||
|
**
|
||||||
|
** Ztack can be called recursively as:
|
||||||
|
** AAztack(AAztack(AAztack(w, x), y), z);
|
||||||
|
*/
|
||||||
|
char *AAztack(a, b)
|
||||||
|
register char *a;
|
||||||
|
register char *b;
|
||||||
|
{
|
||||||
|
register char *c;
|
||||||
|
static char buf[101];
|
||||||
|
|
||||||
|
c = buf;
|
||||||
|
|
||||||
|
while (*a)
|
||||||
|
*c++ = *a++;
|
||||||
|
|
||||||
|
while (*b)
|
||||||
|
*c++ = *b++;
|
||||||
|
|
||||||
|
*c = '\0';
|
||||||
|
|
||||||
|
return (buf);
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue