This is concat.c in view mode; [Download] [Up]
/* concat.c - concatenate a bunch of strings in managed memory */ #include "../h/mh.h" #include <stdio.h> #include <varargs.h> /* VARARGS */ char *concat (va_alist) va_dcl { register char *cp, *dp, *sp; register unsigned len; register va_list list; len = 1; va_start (list); while (cp = va_arg (list, char *)) len += strlen (cp); va_end (list); dp = sp = malloc (len); if (dp == NULL) adios (NULLCP, "unable to allocate string storage"); va_start (list); while (cp = va_arg (list, char *)) sp = copy (cp, sp); va_end (list); return dp; }
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.