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

📄 msg.c

📁 speech signal process tools
💻 C
字号:
/* Last update: 01/13/88  10:59 AM  (Edition: 11) */#include	<stdio.h>#include	<strings.h>#include	"basic.h"#include	"form.h"/*    Two flavors to display message:	form_msg	display message then  position cursor at given			position, this allows form filling on terminal			without cursor save restore capability.	formmsg		display  message and return   to  the caller's			position  using terminal's save/restore cursor			ability. This is designed to be used  by field			checking routine where  user don't know  where			the field is.*/#define MAXSMSG 5#define MSGSIZE 132int	Form_msg = 0;			/* form message on screen flag */static	char	Savemsg [MAXSMSG][MSGSIZE];static	int	Sdx = 0;		/* number of next entry to use */static	int	Smcount = 0;		/* number of messages saved *//*----------------------------------------------------------------------+|									||	    form_msg : display message on the message line		||									|+----------------------------------------------------------------------*/form_msg (s, line, col)char		*s;		/* message to display, if NULL, clear message */unsigned char	line;		/* line to go at end */unsigned char	col;		/* column to go at end */	{	ENTER (form_msg);	poscur ((unsigned char)24, (unsigned char)1, (char *)NULL);	screen (SCR_REVERSE);	screen (SCR_EEOL);	if (s) {		Form_msg = 1;		put_string (s, 0);		save_msg (s);		}	else	Form_msg = 0;	poscur (line, col, (char *)NULL);	EXIT;	} /*----------------------------------------------------------------------+|									||	  formmsg : form_msg () use terminal SC, RC feature		||									|+----------------------------------------------------------------------*/formmsg (s)char	*s;		/* message to display, if NULL, clear message */	{	ENTER (formmsg);	screen (SCR_SAVE);	poscur ((unsigned char)24, (unsigned char)1, (char *)NULL);	screen (SCR_REVERSE);	screen (SCR_EEOL);	if (s) {		Form_msg = 1;		put_string (s, 0);		save_msg (s);		}	else	Form_msg = 0;	screen (SCR_RESTORE);	EXIT;	} /*----------------------------------------------------------------------+|									||	    save_msg : save a message on the message buffer		||									|+----------------------------------------------------------------------*/save_msg (s)char	*s;	{	ENTER (save_msg);	strncpy (Savemsg[Sdx], s, MSGSIZE);	if (++Sdx >= MAXSMSG) Sdx = 0;	if (Smcount < MAXSMSG) Smcount++;	EXIT;	} /*----------------------------------------------------------------------+|									||	    prev_msg : display previously displayed message		||									|+----------------------------------------------------------------------*/prev_msg ()	{	ENTER (prev_msg);	if (!Smcount) return (0);	/* This routine actually pop the message stored */	if (--Sdx < 0) Sdx = MAXSMSG-1;	screen (SCR_SAVE);	poscur ((unsigned char)24, (unsigned char)1, (char *)NULL);	screen (SCR_REVERSE);	screen (SCR_EEOL);	put_string (Savemsg[Sdx], 0);	Form_msg = 1;	screen (SCR_RESTORE);	RETURN (1);	}

⌨️ 快捷键说明

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