⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gans.c

📁 早期freebsd实现
💻 C
字号:
/* gans.c - get an answer from the user */#ifndef	lintstatic char ident[] = "@(#)$Id: gans.c,v 1.2 1992/10/26 22:50:52 jromine Exp $";#endif /* lint */#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]) {#ifdef LOCALE		i = (isalpha(i) && isupper(i)) ? tolower(i) : i;#else		if (i >= 'A' && i <= 'Z')		    i += 'a' - 'A';#endif		*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 + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -