gans.c

来自「<B>Digital的Unix操作系统VAX 4.2源码</B>」· C语言 代码 · 共 43 行

C
43
字号
/* gans.c - get an answer from the user */#include "../h/mh.h"#include <stdio.h>gans (prompt, ansp)register char *prompt;register struct swit *ansp;{    register int    i;    register char  *cp;    register struct swit   *ap;    char    ansbuf[BUFSIZ];    for (;;) {	printf ("%s", prompt);	(void) fflush (stdout);	cp = ansbuf;	while ((i = getchar ()) != '\n') {	    if (i == EOF)		return 0;	    if (cp < &ansbuf[sizeof ansbuf - 1]) {		if (i >= 'A' && i <= 'Z')		    i += 'a' - 'A';		*cp++ = i;	    }	}	*cp = 0;	if (ansbuf[0] == '?' || cp == ansbuf) {	    printf ("Options are:\n");	    for (ap = ansp; ap -> sw; ap++)		printf ("  %s\n", ap -> sw);	    continue;	}	if ((i = smatch (ansbuf, ansp)) < 0) {	    printf ("%s: %s.\n", ansbuf, i == -1 ? "unknown" : "ambiguous");	    continue;	}	return i;    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?