亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? output.c

?? 早期freebsd實現
?? C
字號:
/* * High level routines dealing with the output to the screen. */#include "less.h"public int errmsgs;	/* Count of messages displayed by error() */public int need_clr;extern int sigs;extern int sc_width;extern int so_s_width, so_e_width;extern int screen_trashed;extern int any_display;#if __MSDOS__extern int output_mode;#endif/* * Display the line which is in the line buffer. */	public voidput_line(){	register int c;	register int i;	int a;	int curr_attr;	if (sigs)	{		/*		 * Don't output if a signal is pending.		 */		screen_trashed = 1;		return;	}	curr_attr = NORMAL;	for (i = 0;  (c = gline(i, &a)) != '\0';  i++)	{		if (a != curr_attr)		{			/*			 * Changing attributes.			 * Display the exit sequence for the old attribute			 * and the enter sequence for the new one.			 */			switch (curr_attr)			{			case UNDERLINE:	ul_exit();	break;			case BOLD:	bo_exit();	break;			case BLINK:	bl_exit();	break;			}			switch (a)			{			case UNDERLINE:	ul_enter();	break;			case BOLD:	bo_enter();	break;			case BLINK:	bl_enter();	break;			}			curr_attr = a;		}		if (curr_attr == INVIS)			continue;		if (c == '\b')			putbs();		else			putchr(c);	}}static char obuf[1024];static char *ob = obuf;/* * Flush buffered output. * * If we haven't displayed any file data yet, * output messages on error output (file descriptor 2), * otherwise output on standard output (file descriptor 1). * * This has the desirable effect of producing all * error messages on error output if standard output * is directed to a file.  It also does the same if * we never produce any real output; for example, if * the input file(s) cannot be opened.  If we do * eventually produce output, code in edit() makes * sure these messages can be seen before they are * overwritten or scrolled away. */	public voidflush(){	register int n;	register int fd;#if __MSDOS__	if (output_mode == 0)	{		*ob = '\0';		cputs(obuf);		ob = obuf;		return;	}#endif	n = ob - obuf;	if (n == 0)		return;	fd = (any_display) ? 1 : 2;	if (write(fd, obuf, n) != n)		screen_trashed = 1;	ob = obuf;}/* * Output a character. */	public voidputchr(c)	int c;{	if (ob >= &obuf[sizeof(obuf)])		flush();	if (need_clr)	{		need_clr = 0;		lower_left();		clear_eol();	}#if __MSDOS__	if (c == '\n')		*ob++ = '\r';#endif	*ob++ = c;}/* * Output a string. */	public voidputstr(s)	register char *s;{	while (*s != '\0')		putchr(*s++);}/* * Output an integer in a given radix. */	static intiprintnum(num, radix)	int num;	int radix;{	register char *s;	int r;	int neg;	char buf[10];	if (neg = (num < 0))		num = -num;	s = buf;	do	{		*s++ = (num % radix) + '0';	} while ((num /= radix) != 0);	if (neg)		*s++ = '-';	r = s - buf;	while (s > buf)		putchr(*--s);	return (r);}/* * This function implements printf-like functionality * using a more portable argument list mechanism than printf's. */	static intiprintf(fmt, parg)	register char *fmt;	PARG *parg;{	register char *s;	register int n;	register int col;	col = 0;	while (*fmt != '\0')	{		if (*fmt != '%')		{			putchr(*fmt++);			col++;		} else		{			++fmt;			switch (*fmt++) {			case 's':				s = parg->p_string;				parg++;				while (*s != '\0')				{					putchr(*s++);					col++;				}				break;			case 'd':				n = parg->p_int;				parg++;				col += iprintnum(n, 10);				break;			}		}	}	return (col);}/* * Output a message in the lower left corner of the screen * and wait for carriage return. */	public voiderror(fmt, parg)	char *fmt;	PARG *parg;{	int c;	int col = 0;	static char return_to_continue[] = "  (press RETURN)";	errmsgs++;	if (any_display)	{		lower_left();		clear_eol();		so_enter();		col += so_s_width;	}	col += iprintf(fmt, parg);	if (!any_display)	{		putchr('\n');		return;	}	putstr(return_to_continue);	so_exit();	col += sizeof(return_to_continue) + so_e_width;#if ONLY_RETURN	while ((c = getchr()) != '\n' && c != '\r')		bell();#else	c = getchr();	if (c != '\n' && c != '\r' && c != ' ' && c != READ_INTR)		ungetcc(c);#endif	lower_left();	if (col >= sc_width)		/*		 * Printing the message has probably scrolled the screen.		 * {{ Unless the terminal doesn't have auto margins,		 *    in which case we just hammered on the right margin. }}		 */		screen_trashed = 1;	flush();}static char intr_to_abort[] = "... (interrupt to abort)";/* * Output a message in the lower left corner of the screen * and don't wait for carriage return. * Usually used to warn that we are beginning a potentially * time-consuming operation. */	public voidierror(fmt, parg)	char *fmt;	PARG *parg;{	lower_left();	clear_eol();	so_enter();	(void) iprintf(fmt, parg);	putstr(intr_to_abort);	so_exit();	flush();	need_clr = 1;}/* * Output a message in the lower left corner of the screen * and return a single-character response. */	public intquery(fmt, parg)	char *fmt;	PARG *parg;{	register int c;	int col = 0;	if (any_display)	{		lower_left();		clear_eol();	}	(void) iprintf(fmt, parg);	c = getchr();	if (!any_display)	{		putchr('\n');		return (c);	}	lower_left();	if (col >= sc_width)		screen_trashed = 1;	flush();	return (c);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道亚洲精品aⅴ| 精品国产3级a| 亚洲视频一区二区在线观看| 成人免费视频一区二区| 久久精品夜色噜噜亚洲a∨| 麻豆精品在线看| 亚洲精品在线观看网站| 国产成人免费视频网站高清观看视频 | 欧美一区二区三区视频在线观看| 成人免费视频视频在线观看免费| 成人综合婷婷国产精品久久蜜臀| 色综合久久中文综合久久97 | 91久久香蕉国产日韩欧美9色| 亚洲欧美日本在线| 欧美日韩一区二区三区四区五区| 麻豆精品视频在线观看视频| 日本一区二区动态图| 日本韩国欧美一区二区三区| 蜜桃久久精品一区二区| 中文字幕巨乱亚洲| 欧美视频一区在线| 极品少妇一区二区三区精品视频| 亚洲欧洲一区二区在线播放| 3d动漫精品啪啪| 成人免费看视频| 日韩中文字幕区一区有砖一区| 久久久久久麻豆| 欧美亚洲综合一区| 麻豆一区二区三| 欧美日韩亚洲综合在线| 欧美日韩精品久久久| 欧美成人乱码一区二区三区| 一区二区三区高清在线| 91麻豆精品国产自产在线观看一区| 韩国欧美一区二区| 亚洲一区二区在线播放相泽| 国产偷国产偷亚洲高清人白洁| 99精品视频中文字幕| 日本亚洲电影天堂| 亚洲少妇中出一区| 久久综合色鬼综合色| 日韩一区二区三区免费看| 不卡的电视剧免费网站有什么| 免费成人在线影院| 亚洲综合网站在线观看| 欧美激情中文不卡| 欧美va天堂va视频va在线| 欧美三级电影在线观看| 91在线观看免费视频| 国产一区二区三区香蕉| 亚洲小说春色综合另类电影| 亚洲国产精品久久人人爱蜜臀| 91视频一区二区| 日韩小视频在线观看专区| 中文字幕中文字幕一区二区| 久久亚洲二区三区| 久久www免费人成看片高清| 亚洲人123区| 国产日韩综合av| 日韩视频一区二区三区| 欧美精品vⅰdeose4hd| 日本高清无吗v一区| 成人精品gif动图一区| 国产制服丝袜一区| 久国产精品韩国三级视频| 午夜国产不卡在线观看视频| 亚洲靠逼com| 亚洲色图另类专区| **网站欧美大片在线观看| 亚洲国产精品高清| 国产日韩精品一区二区浪潮av| 精品久久免费看| 欧美sm美女调教| 成人动漫一区二区在线| 亚洲地区一二三色| 亚洲精品精品亚洲| 欧美性受xxxx| 国产成人8x视频一区二区| 国产一区二区三区黄视频| 另类综合日韩欧美亚洲| 日产国产高清一区二区三区| 日本成人超碰在线观看| 开心九九激情九九欧美日韩精美视频电影 | 99re这里只有精品6| 91麻豆精品一区二区三区| 91美女片黄在线观看91美女| 在线视频国产一区| 欧美日韩高清影院| 日韩一区二区三区在线视频| 欧美成人女星排名| 国产午夜精品久久| 亚洲欧美日韩国产综合| 亚洲国产一区二区a毛片| 日韩国产精品久久久| 男人的天堂久久精品| 国产精品国产三级国产| 日韩欧美一区中文| 国产欧美精品一区二区色综合 | 裸体一区二区三区| 久久精品99国产精品| 国产高清一区日本| 色婷婷av一区| 欧美一级理论片| 国产日本欧美一区二区| 有码一区二区三区| 天堂影院一区二区| 国产乱理伦片在线观看夜一区| av电影天堂一区二区在线| 欧美二区三区91| 欧美极品美女视频| 偷拍日韩校园综合在线| 狠狠v欧美v日韩v亚洲ⅴ| jlzzjlzz欧美大全| 欧美伦理影视网| 日本一区二区三区久久久久久久久不 | 欧美日本一区二区| 日韩无一区二区| 国产亚洲短视频| 一区二区三区成人| 国产在线精品一区在线观看麻豆| 99国产精品国产精品毛片| 日韩一区二区免费在线电影| 中文字幕一区二区三| 蜜桃视频一区二区三区在线观看 | 日韩影视精彩在线| 国产精品夜夜嗨| 欧美三级日本三级少妇99| 国产欧美日韩综合精品一区二区| 亚洲精品乱码久久久久久| 六月丁香婷婷色狠狠久久| 91福利小视频| 国产精品人成在线观看免费| 青青青爽久久午夜综合久久午夜| av亚洲精华国产精华精| 欧美一二三区精品| 中文字幕国产一区二区| 蜜臀av亚洲一区中文字幕| 91精品福利视频| 久久人人97超碰com| 一本一道波多野结衣一区二区| 国产精品色哟哟| 精品亚洲porn| 欧美肥妇毛茸茸| 亚洲午夜精品一区二区三区他趣| 国产传媒欧美日韩成人| 日韩精品一区二区三区四区视频| 亚洲自拍另类综合| 99久久国产综合精品麻豆| 久久精品在这里| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美午夜精品一区二区三区| 亚洲视频你懂的| 99精品欧美一区| 中文字幕中文字幕一区| 成人午夜免费电影| 中文字幕视频一区二区三区久| 国产一区二区三区美女| xnxx国产精品| 精品中文字幕一区二区小辣椒| 欧美一区二区成人6969| 午夜私人影院久久久久| 欧美色窝79yyyycom| 亚洲自拍另类综合| 欧美在线三级电影| 亚洲6080在线| 欧美综合亚洲图片综合区| 亚洲靠逼com| 欧美系列亚洲系列| 亚洲综合色在线| 在线观看一区二区精品视频| 一区二区三区在线播| 在线观看日韩av先锋影音电影院| 一区二区三区四区亚洲| 欧美日韩免费一区二区三区视频| 午夜欧美大尺度福利影院在线看| 欧美日韩一卡二卡三卡| 视频一区中文字幕国产| 日韩三区在线观看| 国产麻豆视频精品| 国产精品乱码一区二区三区软件 | 久久精品国产成人一区二区三区 | 亚洲欧洲www| 在线视频亚洲一区| 日韩高清在线不卡| 亚洲精品在线观看视频| 懂色av一区二区三区蜜臀| 亚洲视频在线一区观看| 欧美色视频在线| 精品无人区卡一卡二卡三乱码免费卡 | 国产精品1区二区.| 国产精品少妇自拍| 在线精品国精品国产尤物884a| 丝袜亚洲另类丝袜在线| 26uuuu精品一区二区| www.久久久久久久久| 亚洲福利一二三区| 久久综合九色综合久久久精品综合| 成人在线视频一区二区| 亚洲国产毛片aaaaa无费看 | 26uuu国产在线精品一区二区|