From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/libc/gets.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 sys/libc/gets.c (limited to 'sys/libc/gets.c') diff --git a/sys/libc/gets.c b/sys/libc/gets.c new file mode 100644 index 00000000..309efa11 --- /dev/null +++ b/sys/libc/gets.c @@ -0,0 +1,34 @@ +/* Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. +*/ + +#define import_spp +#define import_libc +#define import_stdio +#include + + +/* GETS -- Read a newline terminated sequence from the standard input and +** return the resultant string minus the newline to the user. +*/ +char * +gets ( + char *buf /* user supplied output buffer */ +) +{ + register FILE *fp = stdin; + register char *op = buf; + register int ch; + + + while ((ch = getc (fp)) != EOF) { + if (ch == '\n') + break; + *op++ = ch; + } + *op = EOS; + + if (ch == EOF && op == buf) + return ((char *) NULL); + else + return (buf); +} -- cgit