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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? html.c

?? www工具包. 這是W3C官方支持的www支撐庫(kù). 其中提供通用目的的客戶端的WebAPI: complete HTTP/1.1 (with caching, pipelining, PUT, POS
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
/*									 HTML.c**	SIMPLE HTML PARSER WITHOUT ANY PRESENTATION CODE****	(c) COPYRIGHT MIT 1995.**	Please first read the full copyright statement in the file COPYRIGH.**	@(#) $Id: HTML.c,v 1.81 2000/08/09 10:43:08 kahan Exp $****	This generates of a hypertext object.  It converts from the**	structured stream interface foo HTML events into the style-**	oriented interface of the HText interface.**** HISTORY:**	 8 Jul 94  FM	Insulate free() from _free structure element.*//* Library include files */#include "wwwsys.h"#include "WWWUtil.h"#include "WWWCore.h"#include "WWWHTML.h"#include "HTML.h"#include "HTextImp.h"#define PUTC(t,c)	(*(t)->target->isa->put_character)((t)->target, (c))#define PUTS(t,s)	(*(t)->target->isa->put_string)((t)->target, (s))#define PUTB(s,b,l)	(*(t)->target->isa->put_block)((t)->target, (b), (l))#define FLUSH_TARGET(t)	(*(t)->target->isa->flush)((t)->target)#define FREE_TARGET(t)	(*(t)->target->isa->_free)((t)->target)#define ABORT_TARGET(t)	(*(t)->target->isa->abort)((t)->target, e)#define MAX_NESTING 40struct _HTStream {    const HTStreamClass *	isa;    /* .... */};struct _HTStructured {    const HTStructuredClass * 	isa;    HTRequest *			request;    HTParentAnchor * 		node_anchor;    HTextImp * 			text;    HTStream *			target;    HTChunk * 			title;    BOOL			in_word;    SGML_dtd *			dtd;    char *			comment_start;	/* for literate programming */    char *			comment_end;    BOOL			started;    int				overflow;    int * 			sp;    int	 			stack[MAX_NESTING];};/*** 	Entity values -- for ISO Latin 1 local representation**	This MUST match exactly the table referred to in the DTD!*/static char * ISO_Latin1[HTML_ENTITIES] = {/* 00 */  	"\306",	/* capital AE diphthong (ligature) */   	"\301",	/* capital A, acute accent */   	"\302",	/* capital A, circumflex accent */   	"\300",	/* capital A, grave accent */   	"\305",	/* capital A, ring */   	"\303",	/* capital A, tilde */   	"\304",	/* capital A, dieresis or umlaut mark */   	"\307",	/* capital C, cedilla */   	"\320",	/* capital Eth, Icelandic */   	"\311",	/* capital E, acute accent */ /* 10 */  	"\312",	/* capital E, circumflex accent */   	"\310",	/* capital E, grave accent */   	"\313",	/* capital E, dieresis or umlaut mark */   	"\315",	/* capital I, acute accent */   	"\316",	/* capital I, circumflex accent */   	"\314",	/* capital I, grave accent */   	"\317",	/* capital I, dieresis or umlaut mark */   	"\321",	/* capital N, tilde */   	"\323",	/* capital O, acute accent */   	"\324",	/* capital O, circumflex accent */ /* 20 */  	"\322",	/* capital O, grave accent */   	"\330",	/* capital O, slash */   	"\325",	/* capital O, tilde */   	"\326",	/* capital O, dieresis or umlaut mark */   	"\336",	/* capital THORN, Icelandic */   	"\332",	/* capital U, acute accent */   	"\333",	/* capital U, circumflex accent */   	"\331",	/* capital U, grave accent */   	"\334",	/* capital U, dieresis or umlaut mark */   	"\335",	/* capital Y, acute accent */ /* 30 */  	"\341",	/* small a, acute accent */   	"\342",	/* small a, circumflex accent */   	"\264",	/* acute accent */  	"\346",	/* small ae diphthong (ligature) */   	"\340",	/* small a, grave accent */   	"\046",	/* ampersand */   	"\345",	/* small a, ring */   	"\343",	/* small a, tilde */   	"\344",	/* small a, dieresis or umlaut mark */         "\246",	/* broken vertical bar *//* 40 */  	"\347",	/* small c, cedilla */ 	"\270",	/* cedilla */	"\242", /* cent sign */        "\251",	/* copyright */        "\244",	/* general currency sign */  	"\260",	/* degree sign */  	"\367",	/* division sign */  	"\351",	/* small e, acute accent */   	"\352",	/* small e, circumflex accent */   	"\350",	/* small e, grave accent */ /* 50 */  	"\360",	/* small eth, Icelandic */   	"\353",	/* small e, dieresis or umlaut mark */   	"\275",	/* fraction one-half */  	"\274",	/* fraction one-fourth */  	"\276",	/* fraction three-fourth */  	"\076",	/* greater than */   	"\355",	/* small i, acute accent */   	"\356",	/* small i, circumflex accent */ 	"\241", /* inverted exclamation */  	"\354",	/* small i, grave accent */ /* 60 */  	"\277",	/* inverted question mark */  	"\357",	/* small i, dieresis or umlaut mark */   	"\253",	/* left angle quote */  	"\074",	/* less than */   	"\257",	/* macron accent */  	"\265",	/* micro sign (greek mu) */  	"\267",	/* middle dot */	"\040", /* non-breaking space */  	"\254",	/* not sign */  	"\361",	/* small n, tilde */ /* 70 */  	"\363",	/* small o, acute accent */   	"\364",	/* small o, circumflex accent */   	"\362",	/* small o, grave accent */   	"\252",	/* feminine ordinal */  	"\272",	/* masculine ordinal */  	"\370",	/* small o, slash */   	"\365",	/* small o, tilde */   	"\366",	/* small o, dieresis or umlaut mark */   	"\266",	/* paragraph sign */  	"\261",	/* plus or minus *//* 80 */	"\243", /* pound sign */        "\042", /* double quote sign - June 94 */	"\273",	/* right angle quote */  	"\256",	/* registered trademark */	"\247", /* section sign */  	"\255",	/* soft hyphen */  	"\271",	/* superscript 1 */  	"\262",	/* superscript 2 */  	"\263",	/* superscript 3 */  	"\337",	/* small sharp s, German (sz ligature) */ /* 90 */  	"\376",	/* small thorn, Icelandic */   	"\327",	/* multiply sign */  	"\372",	/* small u, acute accent */   	"\373",	/* small u, circumflex accent */   	"\371",	/* small u, grave accent */         "\250",	/* dieresis or umlaut mark */  	"\374",	/* small u, dieresis or umlaut mark */   	"\375",	/* small y, acute accent */ 	"\245", /* yen sign */  	"\377"	/* small y, dieresis or umlaut mark */ /* 100 */};PRIVATE char ** CurrentEntityValues = ISO_Latin1;PUBLIC BOOL HTMLUseCharacterSet (HTMLCharacterSet i){    if (i == HTML_ISO_LATIN1) {	CurrentEntityValues = ISO_Latin1;	return YES;    } else {	HTTRACE(SGML_TRACE, "HTML Parser. Doesn't support this character set\n");	return NO;    }}PRIVATE int HTML_write (HTStructured * me, const char * b, int l){    if (!me->started) {	HTextImp_build(me->text, HTEXT_BEGIN);	me->started = YES;    }    /* Look at what we got */    switch (me->sp[0]) {    case HTML_TITLE:	HTChunk_putb(me->title, b, l);	/* Fall through */	    default:	HTextImp_addText(me->text, b, l);    }    return HT_OK;}PRIVATE int HTML_put_character (HTStructured * me, char c){    return HTML_write(me, &c, sizeof(char));}PRIVATE int HTML_put_string (HTStructured * me, const char* s){    return HTML_write(me, s, (int) strlen(s));}PRIVATE void HTML_start_element (HTStructured *	me,				 int		element_number,				 const BOOL * 	present,				 const char **	value){    HTChildAnchor * address = NULL;    if (!me->started) {	HTextImp_build(me->text, HTEXT_BEGIN);	me->started = YES;    }    /* Look at what element was started */    switch (element_number) {    case HTML_A:	if (present[HTML_A_HREF] && value[HTML_A_HREF]) {	    address = HTAnchor_findChildAndLink(		me->node_anchor,					/* parent */		present[HTML_A_NAME] ? value[HTML_A_NAME] : NULL,	/* Tag */		value[HTML_A_HREF],					/* Addresss */		present[HTML_A_REL] && value[HTML_A_REL] ? 		(HTLinkType) HTAtom_caseFor(value[HTML_A_REL]) : NULL);	    	    if (present[HTML_A_TITLE] && value[HTML_A_TITLE]) {		HTLink * link = HTAnchor_mainLink((HTAnchor *) address);		HTParentAnchor * dest = HTAnchor_parent(HTLink_destination(link));		if (!HTAnchor_title(dest)) HTAnchor_setTitle(dest, value[HTML_A_TITLE]);	    }	    HTextImp_foundLink(me->text, element_number, HTML_A_HREF,			       address, present, value);	    HTTRACE(SGML_TRACE, "HTML Parser. Anchor `%s\'\n" _ value[HTML_A_HREF]);	}	break;    case HTML_AREA:	if (present[HTML_AREA_HREF] && value[HTML_AREA_HREF]) {	    address = HTAnchor_findChildAndLink(me->node_anchor, NULL,						value[HTML_AREA_HREF], NULL);	    HTextImp_foundLink(me->text, element_number, HTML_AREA_HREF,			       address, present, value);	    HTTRACE(SGML_TRACE, "HTML Parser. Image map area `%s\'\n" _ value[HTML_AREA_HREF]);	}	break;    case HTML_BASE:	if (present[HTML_BASE_HREF] && value[HTML_BASE_HREF]) {	    HTAnchor_setBase(me->node_anchor, (char *) value[HTML_BASE_HREF]);	    HTTRACE(SGML_TRACE, "HTML Parser. New base `%s\'\n" _ value[HTML_BASE_HREF]);	}	break;    case HTML_BODY:	if (present[HTML_BODY_BACKGROUND] && value[HTML_BODY_BACKGROUND]) {	    address = HTAnchor_findChildAndLink(me->node_anchor, NULL,						value[HTML_BODY_BACKGROUND], NULL);	    HTextImp_foundLink(me->text, element_number, HTML_BODY_BACKGROUND,			       address, present, value);	    HTTRACE(SGML_TRACE, "HTML Parser. Background `%s\'\n" _ value[HTML_BODY_BACKGROUND]);	}	break;    case HTML_FORM:	if (present[HTML_FORM_ACTION] && value[HTML_FORM_ACTION]) {	    address = HTAnchor_findChildAndLink(me->node_anchor, NULL,						value[HTML_FORM_ACTION], NULL);	    HTextImp_foundLink(me->text, element_number, HTML_FORM_ACTION,			       address, present, value);	}	break;    case HTML_FRAME:	if (present[HTML_FRAME_SRC] && value[HTML_FRAME_SRC]) {	    address = HTAnchor_findChildAndLink(me->node_anchor, NULL,						value[HTML_FRAME_SRC], NULL);	    HTextImp_foundLink(me->text, element_number, HTML_FRAME_SRC,			       address, present, value);	    HTTRACE(SGML_TRACE, "HTML Parser. Frame `%s\'\n" _ value[HTML_FRAME_SRC]);	}	break;	    case HTML_INPUT:	if (present[HTML_INPUT_SRC] && value[HTML_INPUT_SRC]) {	    address = HTAnchor_findChildAndLink(me->node_anchor, NULL,						value[HTML_INPUT_SRC], NULL);	    HTextImp_foundLink(me->text, element_number, HTML_INPUT_SRC,			       address, present, value);	}	break;    case HTML_IMG:	if (present[HTML_IMG_SRC] && value[HTML_IMG_SRC]) {	    address = HTAnchor_findChildAndLink(me->node_anchor, NULL,						value[HTML_IMG_SRC], NULL);	    HTextImp_foundLink(me->text, element_number, HTML_IMG_SRC,			       address, present, value);	}	break;    case HTML_ISINDEX:   	HTAnchor_setIndex(me->node_anchor);	break;	    case HTML_LINK:	if (present[HTML_LINK_HREF] && value[HTML_LINK_HREF]) {	    HTParentAnchor * dest = NULL;	    address = HTAnchor_findChildAndLink(		me->node_anchor,					/* parent */		present[HTML_A_NAME] ? value[HTML_A_NAME] : NULL,	/* Tag */		present[HTML_A_HREF] ? value[HTML_A_HREF] : NULL,	/* Addresss */		NULL);							/* Rels */	    dest = HTAnchor_parent(HTAnchor_followMainLink((HTAnchor *) address));	    /* If forward reference */	    if ((present[HTML_LINK_REL] && value[HTML_LINK_REL])) {		char * strval = NULL;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区av在线| 久久久精品免费免费| 久久er99精品| 亚洲美女在线国产| 国产亚洲精品福利| 欧美日韩一区在线观看| 成人免费视频caoporn| 七七婷婷婷婷精品国产| 亚洲综合一区二区| 国产精品久久久久aaaa樱花| 日韩欧美资源站| 欧美性猛交xxxx乱大交退制版 | 亚洲高清免费在线| 国产人久久人人人人爽| 欧美变态tickle挠乳网站| 欧洲另类一二三四区| 播五月开心婷婷综合| 国产一区二区免费视频| 日本人妖一区二区| 午夜不卡在线视频| 亚洲国产精品尤物yw在线观看| 国产精品国产三级国产aⅴ入口| xnxx国产精品| 精品少妇一区二区三区在线视频| 欧美人牲a欧美精品| 欧美三级日韩三级| 欧美视频三区在线播放| 在线国产电影不卡| 一本一道久久a久久精品| 丰满亚洲少妇av| 福利一区福利二区| 粉嫩久久99精品久久久久久夜| 国产自产v一区二区三区c| 久久精品国产澳门| 久久国产欧美日韩精品| 精品一区二区国语对白| 久久不见久久见免费视频1| 蜜桃在线一区二区三区| 久久精品国产第一区二区三区| 久久99精品久久久久久久久久久久| 日韩国产精品大片| 看电影不卡的网站| 国产一区二区三区四区五区美女 | 日韩成人精品在线观看| 性久久久久久久| 日日夜夜免费精品视频| 日韩国产欧美一区二区三区| 奇米777欧美一区二区| 精品在线你懂的| 国产精品一区二区三区乱码| 成人丝袜18视频在线观看| 99久久精品一区| 在线观看av不卡| 91麻豆精品国产91| 国产亚洲欧美在线| 亚洲丝袜精品丝袜在线| 亚洲18女电影在线观看| 麻豆一区二区三| 成人精品国产福利| 91福利视频网站| 欧美一区二区不卡视频| 久久人人超碰精品| 亚洲色图视频网| 天堂va蜜桃一区二区三区| 精品一区二区三区免费观看| 高清国产一区二区| 欧美年轻男男videosbes| 精品久久久久香蕉网| 亚洲同性同志一二三专区| 亚洲风情在线资源站| 精品无人码麻豆乱码1区2区| 97久久超碰精品国产| 欧美日韩精品欧美日韩精品一 | 成人午夜电影小说| 欧美性欧美巨大黑白大战| 欧美一区二区在线视频| 国产日韩高清在线| 亚洲一区二区三区自拍| 韩日精品视频一区| 在线观看国产91| 精品久久久三级丝袜| 亚洲欧美视频在线观看| 热久久国产精品| 99久久er热在这里只有精品15 | 久久不见久久见免费视频1| av中文字幕亚洲| 91精选在线观看| 中文字幕在线不卡视频| 日韩精品每日更新| 成人91在线观看| 精品日产卡一卡二卡麻豆| 亚洲精品成人少妇| 国产福利不卡视频| 欧美日韩国产精选| 国产精品免费av| 久久99精品国产91久久来源| 一本一道久久a久久精品综合蜜臀| 日韩精品一区二区在线| 伊人一区二区三区| 国产精品夜夜爽| 欧美一区二区在线不卡| 亚洲欧美日韩综合aⅴ视频| 国产剧情在线观看一区二区| 欧美日韩mp4| 一区二区三区 在线观看视频| 国产成人超碰人人澡人人澡| 欧美成人r级一区二区三区| 一区二区三区成人| eeuss鲁一区二区三区| 精品国产一二三| 日韩精品一二三四| 欧美性极品少妇| 亚洲免费观看高清完整版在线观看 | 亚洲国产高清在线观看视频| 奇米影视一区二区三区| 欧美视频一二三区| 一区二区三区产品免费精品久久75| 国产精品资源在线观看| 欧美一级精品大片| 日韩高清中文字幕一区| 欧美日韩国产综合一区二区三区 | 国产一区亚洲一区| 欧美一级在线观看| 亚洲一二三四区| 色婷婷综合久久久久中文| 国产欧美在线观看一区| 国产精品性做久久久久久| 久久久无码精品亚洲日韩按摩| 日本成人在线一区| 欧美一区二区三区的| 日韩高清不卡一区二区三区| 欧美精品丝袜中出| 亚洲成av人片观看| 777xxx欧美| 久久精品久久99精品久久| 精品人伦一区二区色婷婷| 日韩中文字幕区一区有砖一区 | 久久影院视频免费| 国产麻豆精品theporn| 欧美国产一区二区在线观看| 国产a精品视频| 亚洲丝袜制服诱惑| 91在线观看地址| 伊人色综合久久天天| 欧美日韩免费在线视频| 性做久久久久久免费观看欧美| 在线成人小视频| 免费视频一区二区| 久久精品亚洲麻豆av一区二区| 国产又粗又猛又爽又黄91精品| 久久久久免费观看| 成人精品视频.| 亚洲精品免费播放| 欧美亚洲一区二区在线| 蜜臀久久久久久久| 久久久久久99精品| av福利精品导航| 亚洲国产美国国产综合一区二区| 欧美久久一二区| 激情都市一区二区| 中文字幕不卡的av| 一本久久a久久精品亚洲| 性欧美大战久久久久久久久| 日韩欧美资源站| 成人av动漫在线| 亚洲国产综合色| 久久色在线视频| 91最新地址在线播放| 亚洲1区2区3区4区| 国产欧美精品在线观看| 在线观看免费成人| 久久97超碰色| 亚洲欧美日韩中文播放| 在线播放国产精品二区一二区四区 | 久久不见久久见免费视频1| 国产精品网站一区| 欧美无人高清视频在线观看| 奇米四色…亚洲| 亚洲日本va在线观看| 欧美va亚洲va香蕉在线| 91小宝寻花一区二区三区| 日日骚欧美日韩| 国产精品国产三级国产aⅴ无密码| 欧美色视频在线观看| 国产一区视频网站| 午夜精品福利一区二区三区av| 精品999在线播放| 在线观看视频欧美| 国产高清久久久| 日韩高清一区在线| 亚洲三级电影网站| 久久狠狠亚洲综合| 亚洲特级片在线| 久久久久高清精品| 欧美精品乱码久久久久久| 波多野结衣中文字幕一区| 天天综合色天天综合色h| 国产精品高清亚洲| 精品国产成人在线影院| 欧美日本免费一区二区三区|