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

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

?? prmtab.c

?? 使用BorlandC++4.5編譯的一個MUD客戶端程序
?? C
字號:
/* prmtab.c: The primitive table */
/* $Id: prmtab.c 2.1 1995/10/24 15:46:14 tsurace Release $ */

#include "vt.h"

#define PTSIZE 201
#define NUM_OPER 24
#define NUM_PRMT (sizeof(prmtab) / sizeof(Prmt))

struct int_list {
	char *name;
	int num;
	struct int_list *next;
};

Dframe suspend_frame, frame_error;
extern Cframe *cstack;
extern int cpos, curprmt;

extern void
	op_bor(),
	op_bxor(),
	op_band(),
	op_eq(),
	op_ne(),
	op_lt(),
	op_le(),
	op_gt(),
	op_ge(),
	op_sl(),
	op_sr(),
	op_add(),
	op_sub(),
	op_mult(),
	op_div(),
	op_mod(),
	op_postinc(),
	op_postdec(),
	op_preinc(),
	op_predec(),
	op_not(),
	op_compl(),
	op_neg(),
	op_asn(),
	pr_write(),
	pr_cmove(),
	pr_scroll(),
	pr_scr_fwd(),
	pr_scr_rev(),
	pr_clrscr(),
	pr_clreol(),
	pr_bold(),
	pr_curs_reset(),
	pr_split(),
	pr_close(),
	pr_resize(),
	pr_set_termread(),
	pr_set_obj(),
	pr_obj(),
	pr_echo(),
	pr_cecho(),
	pr_display(),
	pr_read(),
	pr_reread(),
	pr_pass(),
	pr_win_top(),
	pr_win_bottom(),
	pr_win_col(),
	pr_win_rmt(),
	pr_win_termread(),
	pr_connect(),
	pr_disconnect(),
	pr_set_netread(),
	pr_set_promptread(),
	pr_set_back(),
	pr_set_busy(),
	pr_set_raw(),
	pr_send(),
	pr_input_waiting(),
	pr_rmt_addr(),
	pr_rmt_port(),
	pr_rmt_win(),
	pr_rmt_netread(),
	pr_rmt_promptread(),
	pr_rmt_back(),
	pr_rmt_busy(),
	pr_rmt_raw(),
	pr_rmt_echo(),
	pr_rmt_eor(),
	pr_insert(),
	pr_edfunc(),
	pr_getch(),
	pr_bind(),
	pr_unbind(),
	pr_find_key(),
	pr_key_seq(),
	pr_key_func(),
	pr_strcpy(),
	pr_strcat(),
	pr_strdup(),
	pr_strcmp(),
	pr_stricmp(),
	pr_strchr(),
	pr_strrchr(),
	pr_strcspn(),
	pr_strstr(),
	pr_stristr(),
	pr_strupr(),
	pr_strlwr(),
	pr_strlen(),
	pr_wrap(),
	pr_ucase(),
	pr_lcase(),
	pr_itoa(),
	pr_atoi(),
	pr_find_func(),
	pr_find_prmt(),
	pr_func_name(),
	pr_callv(),
	pr_detach(),
	pr_abort(),
	pr_alloc(),
	pr_new_assoc(),
	pr_lookup(),
	pr_acopy(),
	pr_base(),
	pr_garbage(),
	pr_parse(),
	pr_head(),
	pr_tail(),
	pr_next(),
	pr_prev(),
	pr_type(),
	pr_find_var(),
	pr_sleep(),
	pr_quit(),
	pr_rndseed(),
	pr_fopen(),
	pr_popen(),
	pr_fclose(),
	pr_fwrite(),
	pr_fread(),
	pr_fseek(),
	pr_ftell(),
	pr_fputc(),
	pr_fgetc(),
	pr_fflush(),
	pr_feof(),
	pr_fsize(),
	pr_fmtime(),
	pr_unlink(),
	pr_load_file(),
	pr_find_file(),
	pr_file_name(),
	pr_regcomp(),
	pr_regexec(),
	pr_regmatch(),
	pr_smatch(),
	pr_getenv(),
	pr_system(),
	pr_ctime();

/* The positions of the operators must correspond to the defined values
** in pnode.h */

Prmt prmtab[] = {
	/* Operators (oper.c) */
	{ "|"		, op_bor	,  2 },
	{ "^"		, op_bxor	,  2 },
	{ "&"		, op_band	,  2 },
	{ "=="		, op_eq		,  2 },
	{ "!="		, op_ne		,  2 },
	{ "<"		, op_lt		,  2 },
	{ "<="		, op_le		,  2 },
	{ ">"		, op_gt		,  2 },
	{ ">="		, op_ge		,  2 },
	{ "<<"		, op_sl		,  2 },
	{ ">>"		, op_sr		,  2 },
	{ "+"		, op_add	,  2 },
	{ "-"		, op_sub	,  2 },
	{ "*"		, op_mult	,  2 },
	{ "/"		, op_div	,  2 },
	{ "%"		, op_mod	,  2 },
	{ "++"		, op_postinc	,  1 },
	{ "--"		, op_postdec	,  1 },
	{ "++"		, op_preinc	,  1 },
	{ "--"		, op_predec	,  1 },
	{ "!"		, op_not	,  1 },
	{ "~"		, op_compl	,  1 },
	{ "-"		, op_neg	,  1 },
	{ "="		, op_asn	,  2 },
	/* Screen handling (prmt1.c) */
	{ "write"	, pr_write	, -1 },
	{ "cmove"	, pr_cmove	,  2 },
	{ "scroll"	, pr_scroll	,  2 },
	{ "scr_fwd"	, pr_scr_fwd	,  1 },
	{ "scr_rev"	, pr_scr_rev	,  1 },
	{ "clrscr"	, pr_clrscr	,  0 },
	{ "clreol"	, pr_clreol	,  0 },
	{ "bold"	, pr_bold	,  1 },
	{ "curs_reset"	, pr_curs_reset ,  0 },
	/* Windows (prmt1.c) */
	{ "split"	, pr_split	,  2 },
	{ "close"	, pr_close	,  2 },
	{ "resize"	, pr_resize	,  2 },
	{ "set_termread", pr_set_termread, 2 },
	{ "set_obj"	, pr_set_obj	,  2 },
	{ "obj"		, pr_obj	,  1 },
	{ "echo"	, pr_echo	, -1 },
	{ "display"	, pr_display	,  2 },
	{ "read"	, pr_read	, -1 },
	{ "reread"	, pr_reread	, -1 },
	{ "pass"	, pr_pass	,  2 },
	{ "win_top"	, pr_win_top	,  1 },
	{ "win_bottom"	, pr_win_bottom ,  1 },
	{ "win_col"	, pr_win_col	,  1 },
	{ "win_rmt"	, pr_win_rmt	,  1 },
	{ "win_termread", pr_win_termread, 1 },
	/* Remotes (prmt2.c) */
	{ "connect"	, pr_connect	,  2 },
	{ "disconnect"	, pr_disconnect ,  1 },
	{ "set_netread" , pr_set_netread,  2 },
	{ "set_promptread", pr_set_promptread, 2 },
	{ "set_back"	, pr_set_back	,  2 },
	{ "set_busy"	, pr_set_busy	,  2 },
	{ "set_raw"	, pr_set_raw	,  2 },
	{ "send"	, pr_send	, -1 },
	{ "input_waiting", pr_input_waiting,  1 },
	{ "rmt_addr"	, pr_rmt_addr	,  1 },
	{ "rmt_port"	, pr_rmt_port	,  1 },
	{ "rmt_win"	, pr_rmt_win	,  1 },
	{ "rmt_netread" , pr_rmt_netread,  1 },
	{ "rmt_promptread", pr_rmt_promptread, 1 },
	{ "rmt_back"	, pr_rmt_back	,  1 },
	{ "rmt_busy"	, pr_rmt_busy	,  1 },
	{ "rmt_raw"	, pr_rmt_raw	,  1 },
	{ "rmt_echo"	, pr_rmt_echo	,  1 },
	{ "rmt_eor"	, pr_rmt_eor	,  1 },
	/* Key buffer (prmt2.c) */
	{ "insert"	, pr_insert	,  1 },
	{ "edfunc"	, pr_edfunc	,  1 },
	{ "getch"	, pr_getch	, -1 },
	/* Keys (prmt2.c) */
	{ "bind"	, pr_bind	,  2 },
	{ "unbind"	, pr_unbind	,  1 },
	{ "find_key"	, pr_find_key	,  1 },
	{ "key_seq"	, pr_key_seq	,  1 },
	{ "key_func"	, pr_key_func	,  1 },
	/* String functions (prmt3.c) */
	{ "strcpy"	, pr_strcpy	, -1 },
	{ "strcat"	, pr_strcat	, -1 },
	{ "strdup"	, pr_strdup	,  1 },
	{ "strcmp"	, pr_strcmp	, -1 },
	{ "stricmp"	, pr_stricmp	, -1 },
	{ "strchr"	, pr_strchr	, -1 },
	{ "strrchr"	, pr_strrchr	, -1 },
	{ "strcspn"	, pr_strcspn	,  2 },
	{ "strstr"	, pr_strstr	,  2 },
	{ "stristr"	, pr_stristr	,  2 },
	{ "strupr"	, pr_strupr	,  1 },
	{ "strlwr"	, pr_strlwr	,  1 },
	{ "strlen"	, pr_strlen	,  1 },
	{ "wrap"	, pr_wrap	, -1 },
	{ "ucase"	, pr_ucase	,  1 },
	{ "lcase"	, pr_lcase	,  1 },
	{ "itoa"	, pr_itoa	,  1 },
	{ "atoi"	, pr_atoi	,  1 },
	/* Functions (prmt4.c) */
	{ "find_func"	, pr_find_func	,  1 },
	{ "find_prmt"	, pr_find_prmt	,  1 },
	{ "func_name"	, pr_func_name	,  1 },
	{ "callv"	, pr_callv	, -1 },
	{ "detach"	, pr_detach	, -1 },
	{ "abort"	, pr_abort	,  0 },
	/* Arrays (prmt4.c) */
	{ "alloc"	, pr_alloc	, -1 },
	{ "new_assoc"	, pr_new_assoc	,  0 },
	{ "lookup"	, pr_lookup	,  2 },
	{ "acopy"	, pr_acopy	,  3 },
	{ "base"	, pr_base	,  1 },
	{ "garbage"	, pr_garbage	,  0 },
	/* Misc (prmt4.c) */
	{ "parse"	, pr_parse	,  1 },
	{ "head"	, pr_head	,  1 },
	{ "tail"	, pr_tail	,  1 },
	{ "next"	, pr_next	,  1 },
	{ "prev"	, pr_prev	,  1 },
	{ "type"	, pr_type	,  1 },
	{ "find_var"	, pr_find_var	,  1 },
	{ "sleep"	, pr_sleep	,  1 },
	{ "quit"	, pr_quit	,  0 },
	{ "rndseed"	, pr_rndseed	,  1 },
	/* Files (prmt5.c) */
	{ "fopen"	, pr_fopen	,  2 },
	{ "popen"	, pr_popen	,  2 },
	{ "fclose"	, pr_fclose	,  1 },
	{ "fwrite"	, pr_fwrite	,  2 },
	{ "fread"	, pr_fread	,  1 },
	{ "fputc"	, pr_fputc	,  2 },
	{ "fseek"	, pr_fseek	,  3 },
	{ "ftell"	, pr_ftell	,  1 },
	{ "fgetc"	, pr_fgetc	,  1 },
	{ "fflush"	, pr_fflush	,  1 },
	{ "feof"	, pr_feof	,  1 },
	{ "fsize"	, pr_fsize	,  1 },
	{ "fmtime"	, pr_fmtime	,  1 },
	{ "unlink"	, pr_unlink	,  1 },
	{ "load_file"	, pr_load_file	,  1 },
	{ "find_file"	, pr_find_file	,  1 },
	{ "file_name"	, pr_file_name	,  1 },
	/* Regexps (prmt5.c) */
	{ "regcomp"	, pr_regcomp	,  1 },
	{ "regexec"	, pr_regexec	,  2 },
	{ "regmatch"	, pr_regmatch	,  2 },
	{ "smatch"	, pr_smatch	,  2 },
	/* Environment (prmt5.c) */
	{ "getenv"	, pr_getenv	,  1 },
	{ "system"	, pr_system	,  1 },
	{ "ctime"	, pr_ctime	,  1 },
};

static struct int_list *phtab[PTSIZE];
static struct int_list entries[NUM_PRMT - NUM_OPER];

void init_prmt()
{
	int i, ind;
	struct int_list *entry;

	for (entry = entries, i = NUM_OPER; i < NUM_PRMT; i++, entry++) {
		ind = hash(prmtab[i].name, PTSIZE);
		entry->name = prmtab[i].name;
		entry->num = i;
		entry->next = phtab[ind];
		phtab[ind] = entry;
	}
	suspend_frame.type = frame_error.type = F_EXCEPT;
	suspend_frame.Dval = INTERP_SUSPEND;
	frame_error.Dval = INTERP_ERROR;
}

int find_prmt(name)
	char *name;
{
	struct int_list *entry;

	for (entry = phtab[hash(name, PTSIZE)]; entry; entry = entry->next) {
		if (streq(name, entry->name))
			return entry->num;
	}
	return -1;
}

void finish_error()
{
	char *fname;

	fname = lookup_prog(cstack[cpos - 1].prog);
	if (fname)
		outputf(" in %s", fname);
	coutput("\n");
}

void type_errmsg()
{
	outputf("Error: Invalid arguments to primitive %s",
		prmtab[curprmt].name);
	finish_error();
}

void type_error(rf)
	Dframe *rf;
{
	*rf = frame_error;
	type_errmsg();
}

void bounds_error(rf)
	Dframe *rf;
{
	*rf = frame_error;
	outputf("Error: Out-of-bounds argument to primitive %s",
		prmtab[curprmt].name);
	finish_error();
}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区0| 日韩成人dvd| 成人免费看黄yyy456| 久久九九99视频| 国产精品一区专区| 国产人成一区二区三区影院| 国产成人精品综合在线观看| 国产精品嫩草影院av蜜臀| 99re热视频精品| 一区二区三区波多野结衣在线观看| 在线亚洲高清视频| 婷婷成人综合网| 精品剧情在线观看| 成人高清视频在线| 亚洲综合无码一区二区| 欧美色爱综合网| 久久99精品视频| 国产精品第一页第二页第三页| 在线观看国产一区二区| 日韩成人一级片| 国产精品日韩成人| 欧美另类久久久品| 国产一区久久久| 伊人色综合久久天天| 欧美一级免费大片| 成人午夜又粗又硬又大| 亚洲成在人线免费| 久久久亚洲精华液精华液精华液| 91色porny在线视频| 日日噜噜夜夜狠狠视频欧美人| 久久久国际精品| 欧美人与性动xxxx| 成人午夜视频在线| 日韩成人一区二区三区在线观看| 中文字幕精品一区二区三区精品| 欧美高清性hdvideosex| 成人天堂资源www在线| 日韩精品国产精品| 国产精品第五页| 精品国产免费久久| 欧美日韩精品久久久| yourporn久久国产精品| 麻豆成人免费电影| 一区二区三区四区不卡在线| 久久久久久久久蜜桃| 欧美日韩aaaaa| 91蝌蚪porny成人天涯| 国产毛片精品一区| 日本aⅴ免费视频一区二区三区| 亚洲私人影院在线观看| 久久久久久久久久久黄色| 欧美区一区二区三区| 91在线视频官网| 粉嫩久久99精品久久久久久夜| 久久精品国产亚洲aⅴ| 亚洲一区二区三区四区在线| 最近中文字幕一区二区三区| 国产人成亚洲第一网站在线播放| 欧美v亚洲v综合ⅴ国产v| 91精品国产高清一区二区三区 | 99久久精品一区二区| 免费成人你懂的| 天涯成人国产亚洲精品一区av| 亚洲精品你懂的| 1024成人网色www| 国产精品福利电影一区二区三区四区 | 欧美理论在线播放| 一本色道亚洲精品aⅴ| 岛国一区二区三区| 国产河南妇女毛片精品久久久| 久久精品999| 精品影视av免费| 美女视频网站久久| 美女脱光内衣内裤视频久久网站| 日本aⅴ免费视频一区二区三区| 日韩高清在线电影| 亚洲v中文字幕| 午夜精品免费在线观看| 亚洲成人免费视频| 亚洲福利国产精品| 亚洲成人精品影院| 首页欧美精品中文字幕| 日本免费在线视频不卡一不卡二 | 最新国产成人在线观看| 亚洲欧美一区二区在线观看| 国产精品久久久久婷婷二区次| 国产女主播视频一区二区| 国产欧美日韩精品在线| 日本一区二区三区高清不卡| 国产精品亲子乱子伦xxxx裸| 国产精品色噜噜| 亚洲精品va在线观看| 亚洲国产精品久久人人爱蜜臀| 天堂久久一区二区三区| 日韩国产在线观看| 久久成人av少妇免费| 国产一区二区在线电影| 高清在线不卡av| 在线欧美小视频| 日韩免费一区二区三区在线播放| 精品成人a区在线观看| 欧美激情一区二区三区蜜桃视频| 亚洲欧美综合色| 亚洲图片自拍偷拍| 免费成人你懂的| 成人久久久精品乱码一区二区三区| www.激情成人| 欧美一区二区三区在线观看| 久久久久久免费毛片精品| 1区2区3区国产精品| 亚洲成人免费影院| 国产福利一区二区三区| 欧美在线观看18| 精品欧美黑人一区二区三区| 国产精品三级av| 天天av天天翘天天综合网色鬼国产| 极品少妇一区二区| 99精品国产热久久91蜜凸| 911国产精品| 国产精品热久久久久夜色精品三区 | 91色乱码一区二区三区| 欧美人牲a欧美精品| 久久精品一区二区三区不卡| 一区二区三区四区在线免费观看| 毛片基地黄久久久久久天堂| 成人网页在线观看| 欧美一区午夜精品| 综合激情成人伊人| 蜜桃av一区二区| 色婷婷久久一区二区三区麻豆| 欧美成人bangbros| 一区二区成人在线视频| 国产精品中文字幕一区二区三区| 欧美少妇一区二区| 2021久久国产精品不只是精品| 亚洲综合免费观看高清完整版在线 | 99精品久久只有精品| 日韩欧美国产一区二区三区| 亚洲欧美另类在线| 国产一区二区成人久久免费影院| 欧美日韩亚洲高清一区二区| 中文av一区二区| 国产乱码精品一品二品| 91精品国产麻豆| 亚洲福利视频导航| 色猫猫国产区一区二在线视频| 久久精子c满五个校花| 青青草国产精品97视觉盛宴| 91福利在线观看| 国产精品色在线| 国产精华液一区二区三区| 91精品国产欧美日韩| 亚洲国产一区二区a毛片| av在线不卡网| 国产精品麻豆网站| 国产精品一区在线观看乱码| 精品999在线播放| 免费看日韩a级影片| 欧美美女黄视频| 亚洲国产sm捆绑调教视频| 色天使久久综合网天天| 国产精品白丝在线| 国产不卡在线一区| 国产午夜精品一区二区三区视频 | 国产精品理伦片| 国产成人自拍网| 久久久噜噜噜久久中文字幕色伊伊 | 成人一区二区三区| 国产亲近乱来精品视频| 国产精品性做久久久久久| 欧美xxxx老人做受| 韩国成人在线视频| 久久婷婷成人综合色| 国产一区二区三区四区在线观看| 欧美成人精品福利| 国产尤物一区二区| 日本一区二区视频在线| 成人国产免费视频| 亚洲欧美偷拍三级| 91成人免费在线视频| 亚洲一区二区在线视频| 欧美日韩一区二区三区不卡| 亚洲国产日韩综合久久精品| 51精品久久久久久久蜜臀| 日本成人在线不卡视频| 精品久久久久久无| 国产69精品久久久久777| 中文字幕一区二区三区四区不卡| 日本高清无吗v一区| 午夜视频在线观看一区二区三区| 欧美一区二区三区精品| 国产一区二区三区综合| 国产精品久久夜| 欧美日韩亚洲丝袜制服| 精一区二区三区| 成人免费在线视频观看| 欧美三级在线看| 国产伦理精品不卡| 亚洲精品乱码久久久久久| 91精品国产欧美一区二区18|