锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久久精品性,国产亚洲精品一区二555,欧美国产成人在线http://www.shnenglu.com/kevinlynx/category/9735.html浣庤皟鍋氭妧鏈痏_ C/C++\MMORPG鏈嶅姟鍣╘妯″潡鏋舵瀯__ TODO錛氱紪璇戝師鐞哱linux env __Kevin Lynxzh-cnMon, 15 Mar 2010 04:11:09 GMTMon, 15 Mar 2010 04:11:09 GMT60kl涓殑閿欒澶勭悊http://www.shnenglu.com/kevinlynx/archive/2009/03/26/77963.htmlKevin LynxKevin LynxThu, 26 Mar 2009 09:17:00 GMThttp://www.shnenglu.com/kevinlynx/archive/2009/03/26/77963.htmlhttp://www.shnenglu.com/kevinlynx/comments/77963.htmlhttp://www.shnenglu.com/kevinlynx/archive/2009/03/26/77963.html#Feedback0http://www.shnenglu.com/kevinlynx/comments/commentRss/77963.htmlhttp://www.shnenglu.com/kevinlynx/services/trackbacks/77963.htmlkl涓殑閿欒澶勭悊

    涔嬪墠鎴戜竴鐩磋閿欒澶勭悊鏄痥l閲岀殑杞倠錛岀敱浜庝竴鐩村湪鍏蟲敞涓浜涘叿浣撳姛鑳界殑鏀硅繘錛屼篃娌℃湁瀵?br>榪欐柟闈㈣繘琛屾敼鍠勩?

    鎴戣繖閲屾墍璇寸殑閿欒澶勭悊錛屽寘鎷璦鏈韓鍜屼綔涓哄簱鏈韓涓ゆ柟闈€?br>    璇█鏈韓鎸囩殑鏄浜庤剼鏈唬鐮侀噷鐨勫悇縐嶈娉曢敊璇佽繍琛屾椂閿欒絳夌殑澶勭悊銆傚ソ鐨勫鐞嗗簲璇?br>涓嶄粎浠呭彲浠ユ姤鍛婇敊璇紝鑰屼笖榪樿兘蹇借閿欒璁╁鐞嗚繃紼嬬戶緇?br>    鑰屾妸kl瑙i噴鍣ㄤ綔涓轟竴涓簱浣跨敤鏃訛紝搴撴湰韜篃搴旇瀵逛竴浜涢敊璇儏鍐佃繘琛屾姤鍛娿?

    鏁翠綋涓婏紝kl綆鍗曞湴閫氳繃鍥炶皟鍑芥暟鎸囬拡鏉ユ妸閿欒淇℃伅浼犵粰搴撶殑搴旂敤灞傘傝屽洜涓烘垜甯屾湜鏁翠釜
kl瀹炵幇鐨勫嚑灞傦紙璇嶆硶鍒嗘瀽銆佽娉曞垎鏋愩佺鍙瘋〃銆佽В閲婂櫒絳夛級鍙互灝藉彲鑳藉湴鐙珛銆備緥濡傝櫧鐒惰
娉曞垎鏋愪緷璧栦簬璇嶆硶鍒嗘瀽錛堜緷璧栦簬璇嶆硶鍒嗘瀽鎻愪緵鐨勬帴鍙o級錛屼絾鏄洜涓鴻瘝娉曞垎鏋愬茍涓嶅璇硶鍒嗘瀽
渚濊禆錛屾墍浠ュ畬鍏ㄥ彲浠ユ妸璇嶆硶鍒嗘瀽妯″潡鎷垮嚭鏉ュ崟鐙嬌鐢ㄣ傛墍浠ワ紝鍦ㄦ棩蹇楁柟闈紝鎴戝嚑涔庝負姣忎竴灞?br>閮介檮鍔犱簡涓猠rror_log鍑芥暟鎸囬拡銆?br>    鑰岀敤鎴峰眰鍦ㄩ氳繃kllib灞備嬌鐢ㄦ暣涓簱鏃訛紝浼犲叆鐨勫洖璋冨嚱鏁頒細琚棿鎺ュ湴浼犲埌璇嶆硶鍒嗘瀽灞傘?br>瀹為檯涓婏紝褰搆l浣滀負涓涓簱鏃訛紝kllib姝f槸鐢ㄤ簬妗ユ帴搴撴湰韜拰鐢ㄦ埛灞傜殑bridge銆?

    鍙︿竴鏂歸潰錛岃璦鏈韓鍦ㄥ鐞嗛敊璇殑鑴氭湰浠g爜鏃訛紝閿欒鍒嗕負鍑犲ぇ綾誨瀷灞傛錛?br>    1.璇嶆硶閿欒 lex error錛屽鎵弿瀛楃涓插嚭閿?br>    2.璇硶閿欒 syntax error錛屾暣鐞嗚娉曟爲鏃跺嚭閿?br>    3.榪愯鏃墮敊璇?runtime error錛屽湪瑙i噴鎵ц浠g爜鏃跺嚭閿?br>    4.搴撻敊璇?lib error錛屽彂鐢熷湪kllib榪欎釜bridge灞傜殑閿欒
    kl鍦ㄦ姤鍛婇敊璇俊鎭椂錛屼細棣栧厛闄勫姞璇ラ敊璇槸浠涔堢被鍨嬬殑閿欒銆?

    榪欓噷鏈楹葷儲鐨勬槸璇硶閿欒鐨勫鐞嗐傚洜涓鴻娉曞垎鏋愭椂鍙戠敓閿欒鐨勫彲鑳芥ф渶澶э紝閿欒綾誨瀷涔?br>鏈夊緢澶氥備緥濡備綘灝戝啓浜嗗垎鍙鳳紝灝戝啓浜嗘嫭鍙鳳紝閮戒細瀵艱嚧閿欒銆傝繖涓樁孌靛彂鐢熼敊璇笉浠呰姹傝兘鍑?br>紜姤鍛婇敊璇紝榪橀渶瑕佸拷鐣ラ敊璇鏁翠釜榪囩▼灝介噺姝g‘鍦頒笅鍘匯?

    璇硶鍒嗘瀽闃舵鏈鏍規湰鐨勫氨鏄鍙鋒帹瀵鹼紙鍗曞氨kl鐨勫疄鐜拌岃█錛夛紝鎵璋撶殑絎﹀彿鎺ㄥ鏄繖鏍蜂竴
涓繃紼嬶紝渚嬪鏈夎祴鍊艱鍙ワ細a = 1;璇硶鍒嗘瀽鏃訛紝璇硶鍒嗘瀽鍣ㄥ笇鏈涳紙鎵璋撶殑鎺ㄥ錛夌瓑鍙峰悗闈細
鏄竴涓〃杈懼紡錛屽綋鍒嗘瀽瀹屼簡琛ㄨ揪寮忓悗錛屽張甯屾湜鎺ヤ笅鏉ョ殑絎﹀彿(token)鏄垎鍙蜂綔涓鴻璇彞鐨勭粨
鏉熴?br>    鎵浠ワ紝klparser.c涓殑syn_match姝f槸瀹屾垚榪欎釜榪囩▼銆傛瘡嬈′綘浼犲叆浣犲笇鏈涚殑絎﹀彿錛屼緥濡?br>鍒嗗彿錛岃鍑芥暟灝辨鏌ヨ瘝娉曞垎鏋愪腑褰撳墠絎﹀彿(token)鏄惁鏄垎鍙楓傚綋鐒訛紝瀵逛簬姝g‘鐨勮剼鏈唬鐮侊紝
瀹冩槸涓涓垎鍙鳳紝浣嗘槸濡傛灉鏄敊璇殑浠g爜錛宻yn_match灝變細鎵撳嵃璇稿錛?br>    >>syntax error->unexpected token-> ....
    鍗沖綋鍓嶇殑絎﹀彿鏄笉琚湡鏈涚殑銆?

    涓婇潰瀹屾垚浜嗛敊璇殑媯嫻嬨傚浜庨敊璇殑蹇界暐錛屾垨鑰呮洿楂樼駭鐐瑰湴瀵歸敊璇殑鏍℃錛宬l涓鐞嗗緱
姣旇緝綆鍗曪紝鍗籌細鐩存帴娑堣楁帀榪欎釜涓嶆槸鏈熸湜涓殑絎﹀彿銆備緥濡傦細
    a = 1 /* 蹇樺姞浜嗗垎鍙?*/
    b = 1;
    涓婇潰涓ゅ彞浠g爜琚鐞嗘椂錛屽湪澶勭悊瀹宎=1鍚庯紝鍙戠幇褰撳墠鐨勭鍙?token)b(鏄竴涓狪D token)涓?br>鏄湡鏈?expect)涓殑鍒嗗彿錛岄鍏堟姤鍛奲涓嶆槸鏈熸湜鐨勭鍙鳳紝鐒跺悗kl鐩存帴鎺犺繃b錛岃幏鍙栦笅涓鍙?銆?br>鐒跺悗澶勭悊a=1榪欎釜榪囩▼緇撴潫銆傚綋鐒訛紝涓嬫澶勭悊鍏朵粬璇彞鏃訛紝鍙戠幇=絎﹀彿錛屽張浼氱戶緇彂鐢熼敊璇?

    閿欒淇℃伅涓瘮杈冮噸瑕佺殑榪樻湁琛屽彿淇℃伅銆備箣鍓峩l榪欐柟闈竴鐩村瓨鍦˙UG錛屾垜鍦ㄥ啓璐铔囦緥瀛?br>鐨勬椂鍊欐瘡嬈℃柊鍔犱唬鐮侀兘涓嶆暍鍔犲お澶氥傚洜涓鴻В閲婂櫒鎶ュ憡鐨勯敊璇鍙鋒繪槸閿欒鐨勶紝鎴戝彧鑳介潬鏈夋病
鏈夐敊璇潵鎵鵑敊璇紝鑰屼笉鑳介氳繃閿欒淇℃伅鎵鵑敊璇?br>    琛屽彿淇℃伅琚繚瀛樺湪璇嶆硶鍒嗘瀽鐘舵佷腑(lexState:lineno)錛岃娉曞垎鏋愪腑鑾峰彇token鏃訛紝浼氬彇
鍑哄綋鍓嶇殑琛屽彿錛屼繚瀛樺埌璇硶鏍戞爲鑺傜偣涓傚洜涓哄寘鎷В閲婃ā鍧楅兘鏄熀浜庢爲鑺傜偣鐨勶紝鎵浠ヨ瘝娉曞垎
鏋愯娉曞垎鏋愯В閲婂櫒涓夊眰閮藉彲浠ュ噯紜姤鍛婅鍙楓?

    浣嗘槸涔嬪墠瑙i噴鍣ㄦ姤鍛婄殑琛屽彿濮嬬粓寰堣寮傘傜棁緇撳湪浜庢垜鍦ㄨ澆鍏ヨ剼鏈唬鐮佹枃浠舵椂錛屼互rb鏂瑰紡
杞藉叆錛屽嵆浜岃繘鍒跺艦寮忋備簬鏄紝鍦╳indows涓嬶紝姣忚鏂囨湰灝鵑兘浼氭湁\r\n涓や釜瀛楃銆傝屽湪璇嶆硶鍒?br>鏋愰樁孌靛浜庤鍙風殑澧炲姞鏄細
    case '\n':
    case '\r':
        ls->lineno ++;
    涓嶅悓OS瀵逛簬鏂囨湰鏂囦歡鐨勬崲琛屾墍娣誨姞鐨勫瓧絎﹂兘涓嶄竴鏍鳳紝渚嬪windows鐢╘r\n錛寀nix緋葷敤\n
錛岃矊浼糓ac鐢╘r銆傛墍浠ワ紝璇嶆硶鍒嗘瀽榪欓噷鍐欏簲璇ュ彲浠ュ噯紜湴澶勭悊琛屽彿銆?

    浣嗘槸瀵逛簬windows錛岃繖閲屽氨鐩存帴灝嗚鍙峰鍔犱簡涓ゆ錛屾墍浠ヤ篃灝卞鑷翠簡琛屽彿鍑洪敊鐨勯棶棰樸傛煡
浜嗕笅鏂囨。錛屽彂鐜頒互鏂囨湰鏂瑰紡鎵撳紑鏂囦歡("r")錛岃皟鐢╢read鍑芥暟璇誨叆鏂囦歡鍐呭鏃訛紝灝變細鑷姩鎶?br>\r\n鏇挎崲涓篭n銆?

    浠g爜鏀瑰悗錛屽張鍑洪棶棰樸傝繖涓椂鍊欙紝閫氳繃fseek鍜宖tell鑾峰彇鍒扮殑鏂囦歡灝哄錛岃矊浼煎寘鎷簡
\r\n錛岃宖read鍑烘潵鐨勫唴瀹瑰嵈鍥犱負鏇挎崲\r\n涓篭n鑰屾病鏈夎繖涔堝銆?br>    涓嶈繃鏂囦歡杞藉叆涓嶅睘浜巏l搴撴湰韜紝kl鍙帴鏀朵互瀛楃涓插艦寮忚〃紺虹殑鑴氭湰浠g爜錛屾墍浠ヤ篃綆椾笉浜?br>鏍稿績闂銆?

    鍚屾牱錛屾渶鏂頒唬鐮佸彲浠ヤ粠google SVN鑾峰彇銆傚綋鐒訛紝鎴戜篃鍦ㄨ冭檻鏄惁鎹竴涓柊鐨勯」鐩湴鍧銆?



Kevin Lynx 2009-03-26 17:17 鍙戣〃璇勮
]]>
kl sample:璐铔?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/25/77872.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Wed, 25 Mar 2009 13:17:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/25/77872.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/77872.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/25/77872.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/77872.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/77872.html</trackback:ping><description><![CDATA[<p><font size=2></font>  <p><font size=2>    璨屼技鏈榪慍PPBLOG鍐欎竴闂ㄨ剼鏈璦姣旇緝嫻佽錛岃繛鎴戣繖縐嶅北瀵ㄧ▼搴忓憳閮芥悶鍑轟竴涓儚C鍙堝儚<br>BASIC鐨勬墍璋撹剼鏈璦錛屽彲瑙佸叾嫻佽紼嬪害銆?/font></p> <p><font size=2><br>    榪欎釜kl鑴氭湰渚嬪瓙錛屾槸涓涓叿鏈夊熀鏈姛鑳界殑璐铔囨父鎴忋傝繖涓緥瀛愪腑浣跨敤浜嗕袱涓彃浠訛細<br><a target=_blank>HGE寮曟搸</a>銆佷互鍙婁竴涓拠鑴氱殑浜岀淮鏁扮粍鎻掍歡銆傚洜涓簁l瀵逛簬鏁扮粍鐨勫疄鐜頒笉鏄偅涔堟紓浜紝鑰屾垜瀹炲湪<br>涓嶆兂鍥犱負鍔犲叆浜岀淮鏁扮粍鐨勬敮鎸佽岃浠g爜鐪嬭搗鏉ユ洿涔憋紝鎵浠ョ洿鎺ヤ笉鏀寔榪欎釜鐗規с傝冭檻鍒頒簩緇?br>鏁扮粍鐨勫簲鐢ㄥ湪涓浜涘皬娓告垙涓繕鏄瘮杈冮噸瑕侊紙渚嬪榪欎釜璐铔囷紝鎬婚渶瑕佷釜瀹瑰櫒鍘諱繚瀛樻父鎴忓尯鍩?br>鐨勫睘鎬э級錛屾墍浠ユ拠鑴氬湴鍔犱簡涓敮鎸乶umber鐨勪簩緇存暟緇勬彃浠躲?</font></p> <p><font size=2>    HGE鎻掍歡鎴戝彧port浜嗛儴鍒嗘帴鍙o紝涔熷氨鏄敞鍐屼簡涓閮ㄥ垎鍑芥暟鍒拌剼鏈噷錛屾彁渚涘熀鏈殑璐村浘鍔?br>鑳姐傦紙port--鎴戝疄鍦ㄦ壘涓嶅埌涓涓悎閫傜殑璇嶈鏉ュ艦瀹硅繖縐嶈涓?--HGE鍒頒竴闂ㄨ剼鏈璦閲岋紝鎴戜技<br>涔庡仛榪囧嚑嬈★級 </font> <p><font size=2>    涓嶇煡閬撴湁娌″繀瑕佹彁渚涜椽椋熻泧鐨勫疄鐜扮畻娉曪紝榪欎技涔庤鍑烘潵鏈夌偣寮辨櫤銆? - 涓嶈繃涓轟簡鏂逛究鍒?br>浜洪槄璇籯l鑴氭湰浠g爜錛屾垜榪樻槸紼嶅井璁蹭竴涓嬨傛父鎴忎腑浣跨敤涓涓簩緇存暟緇勪繚瀛樻暣涓父鎴忓尯鍩燂紝鎵璋?br>鐨勬父鎴忓尯鍩熷氨鏄泧鍙互媧誨姩鍒扮殑鍦版柟銆傛瘡涓涓簩緇存暟緇勫厓绱犲搴旀父鎴忓尯鍩熶腑鐨勪竴涓牸瀛愶紝濮?br>涓旂О涓簍ile銆傛瘡涓猼ile鏈変竴涓暣鏁板艱〃紺哄叾灞炴э紝濡侭ODY銆乄ALL銆丗OOD銆丯ONE銆傝泧浣撶殑縐誨姩<br>褰掓牴緇撳簳灝辨槸铔囧ご鍜岃泧灝劇殑縐誨姩銆傝泧澶村拰铔囧熬灞炴т竴鏍鳳紝浣嗘槸铔囧ご璐熻矗鎶婃墍緇忚繃鐨則ile璁劇疆<br>涓築ODY錛岃岃泧灝懼垯鎶婄粡榪囩殑tile璁劇疆涓篘ONE銆傝泧澶寸殑縐誨姩鏂瑰悜闈犵帺瀹舵帶鍒訛紝姣忔铔囧ご杞集鏃?br>錛岄兘浼氳褰曚竴涓漿寮偣鍒頒竴涓槦鍒椼傝漿寮偣鍖呮嫭杞集XY鍧愭爣浠ュ強杞悜鐨勬柟鍚戙傝泧灝炬瘡嬈$Щ鍔?br>鏃墮兘浼氭鏌ユ槸鍚﹀埌杈句簡涓涓漿寮偣錛屾槸鐨勮瘽灝辮緗嚜宸辯殑縐誨姩鏂瑰悜涓鴻杞集鐐硅褰曠殑鏂瑰悜銆?</font> <p><font size=2>    铏界劧鎴戝啓浜唊l榪欎釜鑴氭湰璇█錛屼絾鏄璦鐗規у茍涓嶆槸鎴戣璁$殑銆傛垜鍙槸鍙栦簡C璇█鐨勪竴浜?br>鐗規с傛墍浠ュ湪鍐欒繖涓猻ample鐨勬椂鍊欙紝鎴戝浜巏l榪欎釜鑴氭湰璇█鐨勬劅瑙夛紝灝辨槸涓涓儚basic鐨凜銆?br>鍥犱負瀹冨お鍗曚竴錛屽氨鍍廈ASIC涓鏍峰彧鎷ユ湁璇█鐨勪竴浜涘熀鏈姛鑳斤紝涓嶈兘瀹氫箟澶嶆潅鐨勭粨鏋勶紝娌℃湁澶?br>鐢熺殑瀵瑰悇縐嶆暟鎹粨鏋勭殑鏀寔錛堜緥濡傛煇浜涜璦鐩存帴鏈塴ist, tuple涔嬬被錛夈?</font> <p><font size=2>    浠ュ墠涓鐨勬椂鍊欏湪鐢靛瓙璇嶅吀涓婄敤GVBASIC鍐欏皬娓告垙錛屽綋鏃墮櫎浜咮ASIC浠涔堜篃涓嶇煡閬撱備粖澶?br>鍐欒繖涓椽椋熻泧渚嬪瓙錛屾劅瑙夊氨鍍忎互鍓嶇敤BASIC銆?</font> <p><font size=2>    鍥炲ご璇磋涓浜沰l鑴氭湰閲岀殑鐗規с備粠榪欎釜渚嬪瓙閲岋紙瑙佷笅杞藉寘閲岀殑snake.kl錛夛紝璇稿while錛?br>for錛宨f...else if...琚敮鎸侊紙涔嬪墠鍙戝竷鐨勭増鏈噷榪樹笉鏀寔for鍜宔lse if錛夈傚叏灞鍙橀噺鏀寔<br>璧嬪垵鍊鹼紙涓婁釜鐗堟湰涓嶆敮鎸侊級銆傚綋鐒訛紝榪樻紨紺轟簡濡備綍浣跨敤鎻掍歡鍑芥暟銆?</font> <p><font size=2>    浣嗘槸錛屼粛鏈変竴浜涚壒鎬у湪鎴戠殑鎳掓儼涔嬩笅琚疆涔嬩笉鐞嗐備緥濡俽eturn鍚庡繀欏昏窡涓涓〃杈懼紡錛岃繖<br>鎰忓懗鐫鍗曠函鐨剅eturn;灝嗚瑙嗕負璇硶閿欒銆傚浜巌f( a && b )錛宬l浼氳綆楁墍鏈夌殑琛ㄨ揪寮忥紝鑰?br>鍒殑璇█涔熻浼氬湪a浼歠alse鍚庝笉璁$畻b錛岃繖涔熻涓嶇畻涓棶棰橈紝浣嗚搗鐮佹垜榪樻病淇銆傝繕鏈夛紝kl<br>鍐呴儴瀵逛簬閿欒鐨勬姤鍛婁緷鐒舵病琚慨澶嶏紝灝戞墦涓涓垎鍙蜂綘浼氬緱鍒頒竴緋誨垪閿欒鐨勬姤鍛婏紝浣嗘槸鍗存病鏈?br>鍑嗙‘鐨勮鍙楓傜敋鑷籌紝浣犱細鐪嬪埌瑙i噴鍣ㄥ穿鎺夈備笉瑕佺揣錛屽湪鎴戝績閲岋紝瀹冧綔涓哄綋騫寸數瀛愯瘝鍏鎬笂閭d釜<br>GVBASIC鑰岃█錛屽凡緇忓緢寮哄ぇ鐨勪簡銆?DD</font> <p><font size=2>    鏈榪戞帴瑙︿簡寰堝UNIX鍜孏NU涔嬬被鐨勪笢瑗匡紝鍙戣娌℃湁鎻愪緵鐗堟潈璇存槑鐨?#8216;寮婧?#8217;錛屽師鏉ラ兘鏄吉<br>寮婧愩傝櫧鐒舵垜涔熸兂鎸夌収<a target=_blank>GNU緙栫爜鏍囧噯</a>閲屾墍璇翠負kl鐨勫彂甯冨寘閲岄檮鍔燙hangelog涔嬬被鐨勮鏄庯紝浣嗘槸<br>鍑轟簬鎳掓儼錛岃繕鏄互鍚庡啀璇村惂銆傚悓鏍鳳紝榪欐鎻愪緵鐨勪笅杞介噷鍖呭惈浜嗕竴浜涚紪璇戝ソ鐨勪笢瑗匡紝鎵浠ユ垜涓?br>淇濊瘉瀹冨湪浣犵殑鏈哄櫒涓婁緷鐒跺彲浠ヨ繍琛屻傛垜浣跨敤浜哅ingW鏉ョ紪璇戣繖浜涳紝騫朵笖鎻愪緵鏈夌偣涓戦檵鐨凪akefile銆?br>HGE浣跨敤浜?.81鐗堟湰銆?br>    璐村紶鍥劇粰鎳掑緱涓嬭澆鐨勪漢錛?</font></p> <p><a href="http://www.shnenglu.com/images/cppblog_com/kevinlynx/WindowsLiveWriter/klsample_12B5E/snake_screenshot.jpg"><img style="BORDER-RIGHT-WIDTH: 0px; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" border=0 alt=snake_screenshot src="http://www.shnenglu.com/images/cppblog_com/kevinlynx/WindowsLiveWriter/klsample_12B5E/snake_screenshot_thumb.jpg" width=670 height=433></a> </p> <p><font size=2>    <a href="http://www.shnenglu.com/Files/kevinlynx/snake_sample.zip" target=_blank>涓嬭澆渚嬪瓙</a>錛屽寘鍚剼鏈唬鐮併?</font> <p><font size=2>    濡傛灉瑕佽幏鍙杒l瀹炵幇浠g爜錛屽緩璁粠鎴戝湪google鐨凷VN鑾峰彇錛?br></font><a ><font size=2>http://code.google.com/p/klcommon/</font></a></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/77872.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-25 21:17 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/25/77872.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堜竷錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/12/76302.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Thu, 12 Mar 2009 01:35:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/12/76302.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/76302.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/12/76302.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/76302.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/76302.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.12.2009 </font> <p><font size=2><strong>鑴氭湰涓嶤璇█浜や簰</strong> </font> <p><font size=2>    榪欏叾瀹炴槸榪欎竴緋誨垪鐨勬渶鍚庝竴綃囷紝鍥犱負鎴戣寰楁病浠涔堝叾浠栭渶瑕佸啓鐨勪簡銆?br>    涓鑸岃█錛岃剼鏈璦鍚孋璇█浜や簰錛屽寘鎷湪C璇█涓敞鍐孋鍑芥暟鍒拌剼鏈紝浠庤屾墿灞曡剼鏈殑<br>鍔熻兘錛屼互鍙婂湪C璇█涓皟鐢ㄨ剼鏈嚱鏁般?br>    涓轟簡鎵╁睍鑴氭湰鐨勫姛鑳斤紝榪欓噷寮曞叆鎻掍歡鐨勬蹇點俴l鍦ㄨ繖鏂歸潰澶ц嚧涓婂疄鐜板緱鍜宭ua鐩鎬技銆俴l<br>鏀寔闈欐佹彃浠跺拰鍔ㄦ佹彃浠躲?br>    鍦–璇█涓皟鐢ㄨ剼鏈嚱鏁幫紝kl涓彁渚涗簡涓浜涚畝鍗曠殑鎺ュ彛鐢ㄤ簬婊¤凍闇姹傘?</font> <p><font size=2><strong>闈欐佹彃浠?/strong> </font> <p><font size=2>    闈欐佹彃浠跺叾鎰忔濇槸鍦–浠g爜涓敞鍐屽嚱鏁板埌鑴氭湰涓紝騫墮殢鑴氭湰搴撲竴璧風紪璇戦摼鎺ユ垚鏈緇堟墽琛?br>紼嬪簭銆傚洜涓哄叾緇戝畾鏄湪寮鍙戜竴涓▼搴忕殑榪囩▼涓紝鎵浠ヨ縐頒負闈欐佺殑銆?br>    涓涓彃浠跺嚱鏁幫紝鎸囩殑鏄彲浠ヨ娉ㄥ唽榪涜剼鏈殑C鍑芥暟銆傝繖縐嶅嚱鏁板繀欏誨師鍨嬩竴鏍鳳紝鍦╧l涓繖<br>涓嚱鏁扮殑鍘熷瀷涓猴細typedef struct TValue (*kl_func)( ArgType arg_list );    <br>    褰撲綘瀹氫箟浜嗕竴涓繖鏍風殑鍘熷瀷鐨勫嚱鏁版椂錛屽彲浠ラ氳繃kl搴撴彁渚涚殑:<br>    int kl_register( struct klState *kl, kl_func f, const char *name )鏉ユ敞鍐岃<br>鍑芥暟鍒発l鑴氭湰涓傝鍑芥暟鍙傛暟寰堢畝鍗曪紝絎笁涓弬鏁版寚瀹氭敞鍐岃繘鑴氭湰涓椂鐨勫悕瀛椼?</font> <p><font size=2>    鍘熺悊姣旇緝綆鍗曪細鍦ㄨВ閲婂櫒涓繚瀛樼潃涓涓彃浠剁鍙瘋〃錛岃絎﹀彿琛ㄧ殑絎﹀彿鍚嶅氨鏄繖涓嚱鏁版彁<br>渚涚殑鍚嶅瓧錛岀鍙峰搴旂殑鍊煎氨鏄浜屼釜鍙傛暟錛屼篃灝辨槸鎻掍歡鍑芥暟鐨勫嚱鏁板湴鍧銆?br>    瑙i噴鍣ㄨВ閲婂埌鍑芥暟璋冪敤鏃訛紝鍏堜粠鎻掍歡絎﹀彿琛ㄤ腑鏌ユ壘錛屽鏋滄壘鍒扮鍙鳳紝灝卞皢絎﹀彿鐨勫艱漿鎹?br>涓烘彃浠跺嚱鏁幫紝騫惰皟鐢ㄤ箣銆?</font> <p><font size=2>    鎻掍歡鍑芥暟鐨勫弬鏁板叾瀹炴槸涓涓弬鏁伴摼琛ㄣ傝剼鏈噷璋冪敤鎻掍歡鍑芥暟鏃訛紝鎵浼犻掔殑鍙傛暟灝嗚瑙i噴<br>鍣ㄦ暣鐞嗘垚鍙傛暟閾捐〃騫朵紶閫掔粰鎻掍歡鍑芥暟銆俴l搴撲腑(闆嗕腑鍦╧llib.h涓?鎻愪緵浜嗕竴浜涙柟渚跨殑鎺ュ彛鐢?br>浜庤幏鍙栨瘡涓弬鏁般?br>    鎻掍歡鍑芥暟鐨勮繑鍥炲間篃灝嗚瑙i噴鍣ㄨ漿鎹負鑴氭湰鍐呴儴璇嗗埆鐨勬牸寮忥紝騫跺湪蹇呰鐨勬椂鍊欏弬涓庤繍綆?br>銆?</font> <p><font size=2><strong>鍔ㄦ佹彃浠?/strong> </font> <p><font size=2>    鍔ㄦ佹彃浠跺悓闈欐佹彃浠剁殑榪愪綔鏂瑰紡鐩稿悓錛屾墍涓嶅悓鐨勬槸鍔ㄦ佹彃浠剁殑鎻掍歡鍑芥暟琚斁鍦ㄥ姩鎬佽繍琛?br>鏃跺簱閲岋紝渚嬪windows涓嬬殑dll銆?br>    kl鎻掍歡緙栧啓鏍囧噯閲岃姹傛瘡涓姩鎬佹彃浠跺繀欏繪彁渚涗竴涓猯ib_open鍑芥暟銆俴l瑙i噴鍣紙鎴栬卥l搴?br>--褰撹鐢ㄤ綔搴撴椂錛夎澆鍏ヤ竴涓姩鎬佹彃浠舵椂錛屼細鐩存帴璋冪敤lib_open鍑芥暟銆俵ib_open鍑芥暟鐨勪富瑕佺洰<br>鐨勫氨鏄妸璇ユ彃浠朵腑鐨勬墍鏈夊嚱鏁伴兘娉ㄥ唽榪涜剼鏈噷銆?</font> <p><font size=2>    鍥犱負鍔ㄦ佹彃浠跺湪璁捐涔嬪垵娌℃湁琚冭檻錛屾墍浠ユ垜騫舵病鏈変負kl鍔犲叆涓浜涘師鐢熺殑鍏抽敭瀛楃敤浜庡<br>鍏ュ姩鎬佹彃浠訛紝渚嬪import銆乺equire涔嬬被銆傛垜鍦ㄩ潤鎬佹彃浠跺眰嬈℃彁渚涗簡榪欎釜鍔熻兘銆傚嵆鎴戞彁渚涗簡<br>涓涓猯ibloader闈欐佹彃浠訛紝閾炬帴榪沰l瑙i噴鍣ㄧ▼搴忋傝闈欐佹彃浠舵彁渚涜剼鏈竴涓悕涓篿mport鐨勫嚱<br>鏁般傝鍑芥暟璐熻矗鍔ㄦ佽澆鍏ll涔嬬被鐨勫姩鎬佸簱錛屽茍璋冪敤閲岄潰鐨刲ib_open鍑芥暟瀹屾垚鍔ㄦ佹彃浠剁殑娉?br>鍐屻?</font> <p><font size=2><strong>C紼嬪簭閲岃皟鐢ㄨ剼鏈嚱鏁?/strong> </font> <p><font size=2>    榪欎釜姣旇緝綆鍗曪紝閫氬父C璇█鎯寵皟鐢ㄤ竴涓剼鏈嚱鏁版椂錛屼細浼犲叆鑴氭湰鍑芥暟鍚嶃傚洜涓鴻剼鏈嚱鏁板悕<br>閮戒繚瀛樺湪鍏ㄥ眬絎﹀彿琛ㄩ噷錛宬l搴撲粠鍏ㄥ眬絎﹀彿琛ㄦ壘鍒拌鍑芥暟絎﹀彿錛屽茍杞崲鍏跺間負璇硶鏍戣妭鐐規寚閽?br>錛岀劧鍚庝紶鍏ヨВ閲婂櫒妯″潡瑙i噴鎵ц銆?br>    kl搴撴彁渚泂truct TValue kl_call( struct klState *kl, const char *name, ArgType args );<br>鐢ㄤ簬鍦–閲岃皟鐢ㄨ剼鏈嚱鏁般?</font> <p><font size=2><strong>浠g爜瀵艱</strong> </font> <p><font size=2>    kllib.h/kllib.c浣滀負涓涓ˉ鎺ュ眰錛岀敤浜庡皝瑁呭叾浠栨ā鍧楀彲浠ユ彁渚涚粰澶栭儴妯″潡浣跨敤鐨勬帴鍙o紝<br>濡傛灉灝唊l浣滀負涓涓簱浣跨敤錛岀敤鎴蜂唬鐮佸ぇ閮ㄥ垎鏃跺欏彧闇瑕佷嬌鐢╧llib.h涓彁渚涘嚭鏉ョ殑鎺ュ彛銆?br>    婧愮爜鐩綍plugin涓嬬殑kllibbase.c涓彁渚涗簡闈欐佹彃浠剁殑渚嬪瓙錛宬llibloader.c鎻愪緵浜嗚杞?br>鍔ㄦ佹彃浠剁殑鍔熻兘銆?br>    婧愮爜鐩綍plugin/hge鐩綍涓嬫槸涓涓皝瑁?D娓告垙寮曟搸HGE閮ㄥ垎鎺ュ彛鍒発l鑴氭湰涓殑鍔ㄦ佹彃浠?br>渚嬪瓙銆?br>    婧愮爜鐩綍test/kl.c鏄竴涓畝鍗曠殑kl瑙i噴紼嬪簭錛屽畠鐢ㄤ簬鎵ц涓孌祂l浠g爜銆傝繖涓▼搴忓悓涔嬪墠<br>璇寸殑瑙i噴鍣ㄤ笉鏄悓涓鍥炰簨銆傚綋鎴戣鍒拌В閲婂櫒鏃訛紝瀹冮氬父鎸囩殑鏄痥linterpret.c涓疄鐜扮殑瑙i噴<br>妯″潡錛岃岃В閲婂櫒紼嬪簭鍒欐寚鐨勬槸涓涓嬌鐢ㄤ簡kl搴撶殑鐙珛瑙i噴鍣ㄥ彲鎵ц紼嬪簭銆?/font> <p><font size=2></font></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/76302.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-12 09:35 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/12/76302.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堝叚錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/11/76176.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Wed, 11 Mar 2009 01:12:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/11/76176.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/76176.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/11/76176.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/76176.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/76176.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.11.2009 </font> <p><font size=2><strong>瑙i噴鍣?/strong> </font> <p><font size=2>    鏁寸悊鍑鴻娉曟爲鍚庯紝鎴戜滑灝卞彲浠ユ牴鎹娉曟爲錛屽茍閰嶅悎絎﹀彿琛ㄥ紑濮嬭В閲婃墽琛岃剼鏈唬鐮併傝繖灝?br>鏄帴涓嬫潵瑕佹秹鍙婂埌鐨勮В閲婂櫒銆?</font> <p><font size=2><strong>宸ヤ綔鍘熺悊</strong> </font> <p><font size=2>    鍦ㄧ鍥涜妭涓璇硶鏍戞椂錛屽叾瀹炲氨宸茬粡鎻愬埌瑙i噴鍣ㄧ殑澶ц嚧宸ヤ綔鍘熺悊銆?br>    涓涓猭l鐨刪ello world渚嬪瓙浠g爜澶ц嚧涓猴細<br>    function main()<br>    {<br>        print( "hello world\n" );<br>    }<br>    鍦ㄧ浜岃妭涓垜鎻忚堪浜唊l浠g爜鏁翠綋涓婄殑緇撴瀯錛屾槸浠ュ嚱鏁頒負鍗曚綅鐨勩傚洜姝わ紝瀵逛簬涓涓畬鏁寸殑<br>kl鑴氭湰浠g爜錛屽叾緇忚繃璇硶澶勭悊鍚庯紝灝嗗緩绔嬩竴媯靛ぇ鐨勮娉曟爲錛岃璇硶鏍戝ぇ鑷寸粨鏋勪負錛?br>    fn1_node<br>        stmt_node1<br>        stmt_node2<br>        ...<br>    fn2_node<br>        stmt_node1<br>        stmt_node2<br>        ... </font> <p><font size=2>    fn1_node鍜宖n2_node鍚屽睘浜庡悓涓涓綔鐢ㄥ煙錛宖n1_node鐨剆ibling鎸囬拡鎸囧悜fn2_node錛屽嵆鍦?br>鏁翠釜鏍戠粨鏋勪腑錛屾瘡涓涓猲ode閫氳繃child[3]鎴愬憳榪炴帴鍏跺瓙鑺傜偣錛岄氳繃sibling鎸囬拡榪炴帴鍏剁浉閭?br>鐨勮妭鐐廣?nbsp;   <br>    瑙i噴鍣ㄨВ閲婃墽琛屾椂錛屽氨鏄粠main鍑芥暟鎵瀵瑰簲鐨勮妭鐐瑰紑濮嬮掑綊鎵ц鐨勩傚浜庢瘡涓妭鐐癸紝閮?br>鍙互鐭ラ亾璇ヨ妭鐐瑰搴斾簡鍝紼嬪簭閫昏緫錛氭槸鍔犳硶榪愮畻銆佹瘮杈冭繍綆椼佽繕鏄竴浜涙帶鍒惰鍙ョ瓑絳夈?br>    浠ヨ繖鏍風殑鎺у埗璇彞涓句緥錛?br>    if( 1 ) print( "true" );<br>    瀵筰f璇彞鑰岃█錛屽叾璇硶鏍戠粨鏋勪負錛?br>          if_node<br>         /   |    \<br>        /    |     \ <br>    con_exp    then_stmt else_stmt </font> <p><font size=2>    鍗籌紝if璇彞鏈夋渶澶氭湁涓変釜瀛愯妭鐐?child[3])錛宑hild[0]鎸囧悜if鐨勬潯浠惰〃杈懼紡錛宑hild[1]<br>鎸囧悜鏉′歡琛ㄨ揪寮忎負鐪熸椂鎵ц鐨勮鍙ュ簭鍒楋紝濡傛灉if鏈塭lse閮ㄥ垎錛岄偅涔坈hild[2]灝辨寚鍚慹lse閮ㄥ垎<br>鐨勮鍙ュ簭鍒椼?br>    閭d箞錛屽湪鍙戠幇鏌愪釜鑺傜偣鏄痠f鑺傜偣鏃訛紝灝遍鍏堣綆楀叾鏉′歡琛ㄨ揪寮忚妭鐐廣傝繖涓妭鐐圭殑璁$畻鏂?br>寮忓悓鑴氭湰涓叾浠栨墍鏈夎〃杈懼紡鐨勮綆楁柟寮忕浉鍚岋紝褰撶劧錛屽畠涔熸槸涓涓掑綊鎿嶄綔銆傝綆楀畬鍚庡垽鏂<br>琛ㄨ揪寮忕殑鍊兼槸鍚︿負鐪燂紝涓虹湡鍒欓掑綊鎵цif鑺傜偣鐨刢hild[1]鑺傜偣錛屽惁鍒欐鏌ユ槸鍚︽湁else鑺傜偣錛?br>鏈夌殑璇濆氨鎵цchild[2]鑺傜偣銆?</font> <p><font size=2>    鍏朵粬鎵鏈夎妭鐐圭殑瑙i噴鏂瑰紡閮芥槸鐩稿悓鐨勩?/font></p> <p><font size=2><br><strong>瑙i噴鍣ㄧ幆澧?/strong> </font></p> <p><font size=2>    瑙i噴鍣ㄧ幆澧冩寚鐨勬槸瑙i噴鍣ㄥ湪瑙i噴鎵ц鑴氭湰浠g爜鏃訛紝鎵闇瑕佺殑榪愯鏃剁幆澧冦俴l涓富瑕佹槸絎?br>鍙瘋〃淇℃伅銆備竴涓В閲婂櫒鐜浼氭湁涓変釜絎﹀彿琛細鍏ㄥ眬絎﹀彿琛紝涓昏淇濆瓨鍏ㄥ眬鍙橀噺浠ュ強鑴氭湰鍑芥暟<br>絎﹀彿錛涘嚱鏁板眬閮ㄧ鍙瘋〃錛屽湪瑙i噴璋冪敤涓涓剼鏈嚱鏁版椂錛屼細寤虹珛涓存椂鐨勭鍙瘋〃錛涙彃浠剁鍙瘋〃錛?br>鐢ㄤ簬淇濆瓨鎻掍歡娉ㄥ唽鐨勫嚱鏁般?</font> <p><font size=2><strong>濡備綍瑙i噴鎵ц鍑芥暟</strong> </font> <p><font size=2>    鍑芥暟涓昏鏈変袱澶х被鍨嬶細鑴氭湰鍐呭畾涔夌殑鍑芥暟浠ュ強鎻掍歡娉ㄥ唽榪涚鍙瘋〃鐨勫嚱鏁般傛棤璁烘槸鍝鍑?br>鏁幫紝閮戒細鍦ㄧ鍙瘋〃涓緩绔嬪搴旂殑絎﹀彿銆傚浜庡墠鑰咃紝絎﹀彿琚繚瀛樹簬鍏ㄥ眬絎﹀彿琛紝鍏朵繚瀛樼殑鍐呭<br>鏄鍑芥暟鑺傜偣鐨勮妭鐐規寚閽堬紱鑰屽浜庡悗鑰咃紝鍒欎繚瀛樼殑鎻掍歡鍑芥暟鐨勫嚱鏁板湴鍧鍊箋?</font> <p><font size=2>    姣忎竴嬈¤В閲婂櫒瑙i噴鍒頒竴涓嚱鏁拌皟鐢ㄨ妭鐐規椂錛屼細浼樺厛鍦ㄦ彃浠剁鍙瘋〃涓煡鎵捐鍑芥暟絎﹀彿銆傚<br>鏋滄壘鍒幫紝灝卞皢鍏跺艱漿鎹負綰﹀畾鐨勬彃浠跺嚱鏁扮被鍨嬶紙濡傚悓lua閲屾敞鍐岀殑C鍑芥暟涓鏍鳳級錛岀劧鍚庢暣鐞嗗弬<br>鏁拌皟鐢ㄤ箣銆傝繖涓椂鍊欎唬鐮佹墽琛屾潈杞帴鍒版彃浠跺嚱鏁伴噷銆傚鏋滄病鎵懼埌錛屽氨鍦ㄥ叏灞絎﹀彿琛ㄩ噷鏌ユ壘錛?br>鎵懼埌鍚庡氨寮鴻漿涓鴻娉曟爲鑺傜偣鎸囬拡錛屽茍瑙i噴鎵ц璇ヨ妭鐐逛笅鐨勮鍙ャ?</font> <p><font size=2><strong>浠g爜瀵艱</strong> </font> <p><font size=2>    瑙i噴鍣ㄧ殑浠g爜浣嶄簬klinterpret.h/klinterpret.c涓傛暣浣撲笂鑰岃█娌′粈涔堢壒鍒殑鍦版柟錛?br>涓昏鏄埄鐢ㄨ娉曟爲鐨勭壒鐐廣?br>    瀹屾垚浜嗚繖涓鑺傚悗錛宬l灝卞凡緇忓彲浠ヨВ閲婃墽琛屾墍鏈夌殑鑴氭湰璇彞銆傚綋鐒訛紝鍥犱負娌℃湁杈撳嚭鍔熻兘錛?br>鍙兘鍦ㄨ皟璇曞櫒閲岀湅鐪嬭綆楃粨鏋溿備笅涓鑺傞噷浼氳鍒板皢鑴氭湰緇撳悎榪汣璇█錛屼粠鑰屽彲浠ヨC璇█娉ㄥ唽<br>鎵璋撶殑鎻掍歡鍑芥暟鍒拌剼鏈噷錛屼篃灝卞彲浠ヨ鑴氭湰鍏鋒湁print榪欐牱鐨勮緭鍑哄嚱鏁般?</font> <p><font size=2></font></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/76176.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-11 09:12 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/11/76176.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堜簲錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/10/76078.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Tue, 10 Mar 2009 00:58:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/10/76078.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/76078.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/10/76078.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/76078.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/76078.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.10.2009 </font> <p><font size=2><strong>絎﹀彿琛?/strong> </font> <p><font size=2>    鍦ㄤ笂涓鑺備腑錛屽綋鎴戜滑鐨勮В閲婂櫒瑙i噴鎵цage=age+1榪欎釜璇硶鏍戞椂錛屼細娑夊強鍒板彉閲廰ge鐨勫?br>銆傚疄闄呬笂鎴戜滑榪橀渶瑕佷釜淇濆瓨鑴氭湰涓浉鍏沖彉閲忕殑妯″潡錛屽綋鎴戜滑鐨勮В閲婂櫒鑾峰彇鍒頒竴涓狪D鏍戣妭鐐規椂<br>錛岄渶瑕佷粠榪欎釜妯″潡涓幏鍙栧嚭璇ュ彉閲忕殑鍊鹼紝騫跺弬涓庤繍綆椼?br>    榪欎釜鎴戠О涔嬩負絎﹀彿琛ㄣ傛垜鎯沖埌榪欓噷錛屾垜鎵璇寸殑姒傚康寰堝彲鑳藉拰鏁欑涔︽湁鐐逛笉涓鏍蜂簡銆?</font> <p><font size=2><strong>浠涔堟槸絎﹀彿琛紵</strong> </font> <p><font size=2>    絎﹀彿琛?symbol table)灝卞鍚屽叾瀛楅潰鎰忔濅竴鏍鳳紝鏄竴涓〃錛屾洿瀹芥硾鍦拌鏄竴涓繚瀛樼鍙?br>鐨勫鍣ㄣ?br>    鑴氭湰涓濡傚彉閲忓嚱鏁頒箣綾葷殑涓滆タ閮界畻浣滅鍙鳳紝渚嬪age銆傜鍙瘋〃灝辨槸淇濆瓨榪欎簺絎﹀彿鐨勫<br>鍣ㄣ?br>    鍦╧l涓紝絎﹀彿琛ㄤ繚瀛樼潃鏌愪竴涓綔鐢ㄥ煙閲岀殑鍙橀噺銆傚叾鍏ㄥ眬絎﹀彿琛ㄨ繕淇濆瓨鐫鍑芥暟絎﹀彿錛屽浜?br>鍑芥暟絎﹀彿鑰岃█錛屽叾鍊間負璇硶鏍戞爲鑺傜偣鐨勬寚閽堝箋傚綋璋冪敤涓涓嚱鏁版椂錛屽皢璇ュ艱漿鎹負鏍戣妭鐐癸紝<br>鐒跺悗鎵ц銆傚綋鐒訛紝榪欏簲璇ョ畻鍋氳В閲婃墽琛屼竴鑺傜殑緇嗚妭錛屼笉澶氳銆?</font> <p><font size=2>    鍐嶆槑紜笅絎﹀彿琛ㄧ殑浣滅敤錛屼婦渚嬶紝鍦ㄤ笂涓鑺備腑錛屾秹鍙婂埌榪欎箞涓涓緥瀛愬嚱鏁幫細<br>    value factor( TreeNode *node )<br>    {<br>        switch( node->type )<br>        {<br>            case ID:<br>                /* 鍦ㄨ繖閲岋紝鍙戠幇涓涓爲鑺傜偣綾誨瀷涓篒D錛屽氨闇瑕佹牴鎹甀D瀵瑰簲鐨勫悕瀛楋紝涔熷氨<br>                 鏄痑ge錛屽湪絎﹀彿琛ㄤ腑鏌ユ壘age鐨勫?*/<br>                return age錛?nbsp;   <br>        /* ... */<br>        }<br>    }<br>    浠ヤ笂娉ㄩ噴闃愯堪浜嗙鍙瘋〃鐨勪綔鐢ㄣ?</font> <p><font size=2><strong>絎﹀彿琛ㄧ殑瀹炵幇</strong> </font> <p><font size=2>    鍏跺疄涓嶇絎﹀彿琛ㄥ浣曞疄鐜幫紝瀵逛簬鍏朵粬妯″潡鑰岃█錛屽絎﹀彿琛ㄧ殑鍞竴瑕佹眰灝辨槸鎻愪緵鍑犱釜綾諱技<br>榪欐牱鐨勬帴鍙o細<br>    value sym_lookup( const char *name );<br>    void sym_insert( const char *name, value val ); <br>    涔熷氨鏄錛屾彁渚涙煡鎵劇鍙峰鹼紝浠ュ強鎻掑叆鏂扮鍙風殑鎺ュ彛銆?</font> <p><font size=2>    鍦╧l涓紝浣跨敤浜?lt;緙栬瘧鍘熺悊涓庡疄璺?gt;涓浉鍚岀殑絎﹀彿琛ㄦ暟鎹粨鏋勫疄鐜般傚嵆浣跨敤浜唄ash琛紝<br>hash鏁扮粍涓瘡涓厓绱犱繚瀛樼殑鏄竴涓摼琛ㄥご鑺傜偣銆傛瘡涓涓鍙峰瓧絎︿覆閫氳繃鏁e垪鍑芥暟寰楀埌hash鏁?br>緇勭儲寮曪紝鐒跺悗鍦ㄨ绱㈠紩閲岃繘琛屼竴嬈$嚎鎬ф煡鎵俱傚緢鍏稿瀷鐨刪ash緇撴瀯銆?</font> <p><font size=2>    鍙︿竴鏂歸潰錛屽洜涓簁l鏀寔鍏ㄥ眬鍜屽嚱鏁板眬閮ㄤ袱涓綔鐢ㄥ煙銆傛墍浠l涓湁涓涓叏灞絎﹀彿琛紝鐢ㄤ簬<br>淇濆瓨鍏ㄥ眬鍙橀噺浠ュ強鎵鏈夌殑鍑芥暟絎﹀彿錛涘悓鏃舵瘡涓嬈¤繘鍏ヤ竴涓嚱鏁版椂錛屽氨浼氬垱寤轟竴涓復鏃剁殑灞閮?br>絎﹀彿琛紝鐢ㄤ簬瀛樺偍灞閮ㄥ彉閲忥紱鍚庢潵錛屼負浜嗘敮鎸佹彃浠訛紝鎻掍歡鍑芥暟琚壒瀹氬湴淇濆瓨鍦ㄥ彟涓涓叏灞絎?br>鍙瘋〃閲屻?</font> <p><font size=2><strong>浠g爜瀵艱</strong> </font> <p><font size=2>    kl涓殑絎﹀彿琛ㄥ疄鐜頒唬鐮佸湪klsymtab.h/klsymtab.c涓紝瀹炵幇姣旇緝綆鍗曪紝鏃犻渶澶氳█銆?</font></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/76078.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-10 08:58 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/10/76078.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堝洓錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/09/75962.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Mon, 09 Mar 2009 03:12:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/09/75962.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/75962.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/09/75962.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/75962.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/75962.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.9.2009 </font> <p><font size=2><strong>璇硶鍒嗘瀽</strong> </font> <p><font size=2>    璇硶鍒嗘瀽鎺ユ敹璇嶆硶鍒嗘瀽闃舵鐨則oken闆嗗悎涓鴻緭鍏ワ紝灝嗚繖浜涙病鏈夊叧緋葷殑tokens鏁寸悊涓虹浉浜?br>涔嬮棿鏈夊叧緋葷殑緇撴瀯銆備功闈㈢偣鐨勮娉曞彨璇硶鏍戙?br>    姣忎竴嬈¤鎴戝啓榪欎簺鏂囩粔緇夌殑姒傚康鐪熻鎴戝彈涓嶄簡:D銆?</font> <p><font size=2><strong>璇硶鏍?/strong> </font> <p><font size=2>    璇硶鏍戠畝鍗曟潵璇村氨鏄竴涓互token浣滀負姣忎釜鑺傜偣鐨勬爲鍨嬬粨鏋勩備緥濡傛垜浠湁琛ㄨ揪寮廰ge =<br>age + 1;錛屽湪璇嶆硶闃舵瀹冭鏁寸悊涓簍oken闆嗗悎錛歛ge, =, age, +, 1銆傞偅涔堝湪緇忚繃璇硶鍒嗘瀽鍚?br>錛岃繖浜泃okens灝嗚鏁寸悊涓哄ぇ鑷村涓嬬殑鏍戝艦緇撴瀯錛?br>        =<br>      /   \<br>    age    +<br>         /   \<br>       age     1 </font> <p><font size=2>    鏁寸悊鎴愯繖鏍風殑緇撴瀯鏈変粈涔堝ソ澶勶紵灝眐l瑙i噴鍣ㄨ岃█錛屾渶鐩存帴鐨勫ソ澶勫氨鏄垜鍙互閫掑綊鍦拌В閲?br>榪欐5鏍戞墽琛屻備緥濡傦細 </font> <p><font size=2>    value compute( TreeNode *root )<br>    {<br>        /* child[0]淇濆瓨緇撴灉鍊糰ge錛宑hild[1]鏄偅涓?琛ㄨ揪寮?*/<br>        return op_exp( root->child[1] ); <br>    } </font> <p><font size=2>    value op_exp( TreeNode *node )<br>    {<br>        switch( node->op )<br>        {<br>            case '+':<br>            {<br>                /* + 琛ㄨ揪寮忓繀鐒舵湁宸﹀彸鎿嶄綔鏁?*/<br>                value left = factor( node->child[0] );<br>                value right = factor( node->child[1] );<br>                return left + right;<br>            }<br>        }<br>    }<br>    value factor( TreeNode *node )<br>    {<br>        switch( node->type )<br>        {<br>            case ID:<br>                /* 鏌ユ壘age鐨勫?*/<br>                return age; </font> <p><font size=2>            case CONST:<br>                /* 1 鏄父閲?*/<br>                return node->cvalue;<br>        }<br>    } </font> <p><font size=2>    濡備綘鎵瑙侊紝褰撴垜浠畬鎴愪簡璇硶鍒嗘瀽闃舵錛屾垜浠氨鍙互瀹屾垚鎴戜滑鐨勮В閲婂櫒浜嗐傚悗闈㈡垜浼氬崟<br>鐙瑙d笅鏁翠釜瑙i噴榪囩▼錛屽寘鎷瘡涓ā鍧楁槸濡備綍鍗忎綔鐨勩傛垜涓嶇煡閬撳叾浠栬В閲婂櫒鏄庝箞鍋氱殑錛屼絾<br>鏄垜榪欐牱鍋氾紝璧風爜緇撴灉鏄鐨勩?</font> <p><font size=2><strong>濡備綍鏁寸悊鍑鴻娉曟爲錛?/strong> </font> <p><font size=2>    榪欓噷涓嶅緱涓嶆彁鍒版墍璋撶殑BNF鏂囨硶錛屽緢鏄庢樉浣犺繕鏄棤娉曚粠鎴戣繖閲岃幏鍙栫紪璇戝師鐞嗛噷鏌愪釜姒傚康<br>鐨勮瑙c傛垜榪欓噷鎻愯繖涓蹇靛畬鍏ㄦ槸鏂逛究鎴戞彁鍒拌繖涓笢瑗褲?br>    姣忎竴縐嶈璦閮芥湁鍏惰嚜宸辯殑BNF鏂囨硶錛屽洜涓轟竾鎭剁殑鍏堢煡鍛婅瘔鎴戜滑錛屾瘡涓闂ㄨ璦閮介渶瑕佸緩绔?br>鍏惰娉曟爲銆? -!<br>    灝卞儚璇嶆硶鍒嗘瀽涓鏍鳳紝鍥犱負澶ч儴鍒嗚璦鐨勭粨鏋勯兘宸笉澶氾紝鎵浠ユ垜瑙夊緱璇嶆硶鍒嗘瀽鍜岃娉曞垎鏋?br>鍩烘湰涓婇兘娌℃湁浠諱綍鐗瑰埆涔嬪銆備篃灝辨槸璇達紝鍒殑璇█鐨凚NF浣犲彲浠ョ洿鎺ユ嬁鏉ユ敼鏀圭敤銆?br>    鎶勪釜BNF濡備笅錛?br>    exp -> exp adop term | term<br>    addop -> + | -<br>    term -> term mulop factor | factor<br>    mulop -> *<br>    factor -> (exp) | number<br>    榪欎釜BNF鐢ㄦ潵鎻忚堪涓鑸殑綆楁暟琛ㄨ揪寮?+-*/)銆傜畝鍗曟潵璇達紝涓闂ㄨ璦鐨凚NF灝辨槸鐢ㄤ簬鎻忚堪璇?br>璇█鎵鏈夎鍙ョ殑涓滆タ錛屽寘鎷琲f銆亀hile銆佸嚱鏁板畾涔変箣綾匯傚緩璁綘google涓涓婥璇█鐨凚NF錛屽茍<br>鏀歸犱箣鐢ㄤ簬浣犺嚜宸辯殑璇█銆?</font> <p><font size=2>    閭d箞鏈変簡BNF涔嬪悗錛岃濡備綍鏁寸悊鍑鴻娉曟爲鍛紵<br>    閫氬父錛屾垜浠殑浠g爜閲岄兘浼氱洿鎺ユ湁瀵瑰簲exp銆乼erm銆乤ddop涔嬬被鐨勫嚱鏁般傛寜鐓ф垜榪欏彞璇濈殑鎰?br>鎬濓紝涓婇潰鎶勭殑BNF琚炕璇戜負紼嬪簭浠g爜鍚庯紝灝卞彲鑳戒負錛?br>    exp()<br>    {<br>        if( ... ) left = exp()<br>        right = term();<br>        left addop right;<br>    }<br>    term()<br>    {<br>        if( ... ) left = term()<br>        right = factor();<br>        left mulop right;<br>    }<br>    factor()<br>    {<br>        if( ... ) return exp();<br>        else return number;<br>    } </font> <p><font size=2>    (鍙兘榪樹細娑夊強鍒癊BNF錛岀敤浜庡鐞嗛噸澶嶅拰閫夋嫨鐨勪竴浜涙儏鍐?--涓嶇敤綆¤繖鍙ヨ瘽) </font> <p><font size=2>    姣忎竴涓嚱鏁板熀鏈笂閮戒細榪斿洖涓涓爲鑺傜偣錛屽綋鐒訛紝璇ヨ妭鐐逛笅鍙兘浼氭湁寰堝瀛愯妭鐐廣?nbsp;   </font> <p><font size=2><strong>鎬葷粨</strong> </font> <p><font size=2>    璇硶鍒嗘瀽鍩烘湰涓婂氨鏄互涓婁俊鎭傚畠灝嗚瘝娉曞垎鏋愯緭鍑虹殑token闆嗗悎鏁寸悊鎴愪竴棰楄娉曟爲銆備負<br>浜嗘暣鐞嗗嚭榪欐5璇硶鏍戯紝浣犻渶瑕佹壘涓浠界敤浜庢弿榪頒綘璇█鐨凚NF錛岀劧鍚庢牴鎹瓸NF緲昏瘧鎴愬鐞嗕唬鐮併?</font> <p><font size=2><strong>浠g爜瀵艱</strong> </font> <p><font size=2>    kl涓殑鏁翠釜璇硶鍒嗘瀽浠g爜浣嶄簬klparser.c/klparser.h涓紝鍏禕NF鍩烘湰涓婂彇鑷?lt;緙栬瘧鍘熺悊涓?br>瀹炶返>闄勫綍涓殑C_璇█銆?/font> <p><font size=2></font></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/75962.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-09 11:12 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/09/75962.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堜笁錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/07/75816.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Sat, 07 Mar 2009 05:43:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/07/75816.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/75816.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/07/75816.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/75816.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/75816.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.7.2009</font> <p><font size=2><strong>璇嶆硶鍒嗘瀽</strong> </font> <p><font size=2>    璇嶆硶鍒嗘瀽灞炰簬鏁翠釜緙栬瘧嫻佺▼涓殑絎竴涓樁孌點備負浠涔堣鎶婄紪璇戣繃紼嬪垎涓哄涓樁孌碉紝榪欏氨<br>濡傚悓杞歡鍒嗗眰涓鏍鳳紝涓漢瑙夊緱鏄嚭浜庨檷浣庡鏉傛х殑鑰冭檻銆?br>    鍐嶆澹版槑鎴戜笉浼氬憡璇変綘浠諱綍緙栬瘧鍘熺悊鐨勭悊璁虹煡璇嗭紝鍥犱負鍧︾巼鍦拌鎴戜篃涓嶄細:D銆傛墍浠ユ垜鍔?br>鍔涘皢鎴戜滑闇瑕佷簡瑙g殑姒傚康灝藉彲鑳界畝鍗曞湴鍛婅瘔浣犮傚綋鐒訛紝鍙兘浼氫笌鏁欑涔︿笉鍚誨悎銆?</font> <p><font size=2><strong>浠涔堟槸璇嶆硶鍒嗘瀽?</strong> </font> <p><font size=2>    璇嶆硶鍒嗘瀽灝辨槸鎶婁竴孌佃瘽鏁寸悊鎴愬崟璇嶉泦鍚堛備婦涓畝鍗曠殑渚嬪瓙錛屼緥濡傛湁浠g爜:age = age + 1;錛?br>緇忚繃璇嶆硶鍒嗘瀽鍚庯紝灝嗗緱鍒幫細age銆?銆乤ge銆?銆?銆?鍑犱釜絎﹀彿銆備負浜嗘柟渚匡紝鎴戠О姣忎釜鍗曡瘝涓轟竴<br>涓猼oken銆?</font> <p><font size=2><strong>璇嶆硶鍒嗘瀽鐨勪綔鐢?/strong> </font> <p><font size=2>    璇嶆硶鍒嗘瀽鍒嗘瀽鍑烘潵鐨勫崟璇嶉泦鍚堬紝鐩存帴浣滀負緙栬瘧嫻佺▼涓帴涓嬫潵鐨勮娉曞垎鏋愮殑杈撳叆銆傞偅涔堣<br>娉曞垎鏋愰樁孌甸潰瀵圭殑灝嗘槸涓涓竴涓殑token錛岃屼笉鏄崟涓殑瀛楃銆?br>    渚嬪錛屽湪澶勭悊age = age + 1;榪欑璇彞鏃訛紝褰撴垜浠幏鍙栧埌token "="鏃訛紝鎴戜滑鐩存帴鏈熸湜鎺?br>涓嬫潵鐨則oken搴旇鏄釜琛ㄨ揪寮忋備互鍗曡瘝涓哄崟浣嶅湴澶勭悊錛屾瘮鐩存帴澶勭悊鍗曚釜瀛楃綆鍗曞緢澶氥?</font> <p><font size=2><strong>璇嶆硶鍒嗘瀽鐨勮繃紼?/strong> </font> <p><font size=2>    璇嶆硶鍒嗘瀽鐨勮緭鍏ユ槸鍗曚釜瀛楃嫻侊紝涓鑸垜浠琭open涓涓簮浠g爜鏂囦歡錛屼繚瀛樺湪涓涓猚har緙撳瓨<br>閲岋紝榪欏氨鏄瘝娉曞垎鏋愮殑杈撳叆銆傝岃瘝娉曞垎鏋愮殑鏈緇堣緭鍑虹粨鏋滃氨鏄竴涓竴涓殑token銆?br>    涓轟簡澶勭悊鏂逛究錛宼oken騫朵笉鏄崟綰殑鍗曡瘝銆傞氬父鎴戜滑浼氬皢婧愪唬鐮佷腑鐨勬墍鏈夊崟璇嶅垎綾伙紝渚?br>濡傚彉閲忓悕鍏跺疄閮藉睘浜庝竴綾籺oken銆傜畝鍗曠殑token鍙畾涔変負錛?br>    struct Token<br>    {<br>        int type;<br>        char value[256];<br>    };<br>    type鐢ㄤ簬琛ㄧずtoken鐨勭被鍨嬶紝渚嬪涓涓彉閲忓悕token鐨勭被鍨嬫槸涓涓爣璇嗙銆倂alue鍙互鐢?br>鏉ュ叿浣撳湴淇濆瓨榪欎釜鍙橀噺鐨勫悕瀛椼?</font> <p><font size=2>    瀵逛簬type鐨勫鐞嗭紝閫氬父浼氫簨鍏堝畾涔変竴緇勬灇涓懼鹼紝渚嬪錛?br>    enum    {    ID, NUM, STRING, IF, ELSE, WHILE, RETURN, FUNCTION }絳夌瓑鐢ㄤ簬鏍囩ず<br>鍦ㄤ竴涓簮浠g爜涓彲鑳藉嚭鐜扮殑鎵鏈塼oken銆?</font> <p><font size=2>    铏界劧璇磋瘝娉曞垎鏋愮殑緇撴灉鏄竴涓猼oken闆嗗悎錛屼絾浜嬪疄涓婃垜浠茍涓嶆槸涓嬈″仛瀹岃瘝娉曞垎鏋愩傞氬父<br>璇嶆硶鍒嗘瀽妯″潡鎻愪緵涓涓猤et_token鍑芥暟銆傛瘡嬈¤皟鐢ㄨ鍑芥暟鏃訛紝閮借繑鍥炴簮浠g爜涓笅涓涓猼oken銆?br>渚嬪錛屾湁婧愪唬鐮侊細age = age + 1;<br>    絎竴嬈¤皟鐢╣et_token灝嗚幏寰?{ ID, "age" }錛岀浜屾鑾峰緱 { ASSIGN, "=" }錛岀涓夋<br>鑾峰緱{ ID, "age" }錛岀瓑絳夈?</font> <p><font size=2>    閭d箞錛岃瘝娉曞垎鏋愯濡備綍瀹炵幇錛熶篃灝辨槸struct Token get_token()鍑芥暟濡備綍瀹炵幇錛熷叾瀹炲緢<br>綆鍗曪紝浣犲憡璇夋垜錛氱粰浣犱竴涓瓧絎︿覆錛屼綘濡備綍鍒ゆ柇榪欎釜瀛楃涓插叏閮ㄦ槸鏁板瓧錛?br>    int is_num( const char *str )<br>    {<br>        while( *str != 0 ) <br>        {<br>            if( !isdigit( *str++ ) ) return 0;<br>        }<br>        return 1;<br>    }<br>    鎵浠ワ紝鍩烘湰涓婏紝璇嶆硶鍒嗘瀽鐨勮繃紼嬩篃灝辨槸榪欎釜榪囩▼銆傚氨鎷挎爣璇嗙涓句緥錛屽吀鍨嬬殑鏍囪瘑絎︿竴鑸?br>浠ュ瓧絎﹀紑澶達紝鐒跺悗鎺ョ潃鏄暟瀛楁垨瀛楃鎴朹錛屽綋閬囧埌闈炴硶瀛楃鏃訛紝榪欎釜鏍囪瘑絎︾殑鎵弿鍗崇粨鏉熴?br>    璇嶆硶鍒嗘瀽涓鑸槸涓獁hile+switch錛?br>    struct Token get_token()<br>    {<br>        while( current_char != 0 )<br>        {<br>            switch( current_char )<br>            {<br>                case CHARACTER:<br>                    /* 鎵弿涓涓爣璇嗙 token */<br>                    break; </font> <p><font size=2>                case '=':<br>                    /* 鑾峰緱涓涓?ASSIGN token */<br>                    break; </font> <p><font size=2>                    ...<br>            }<br>        }<br>    } </font> <p><font size=2>    鐜板湪錛岃瘯鐫鍘繪葷粨涓闂ㄨ璦閲岀殑姣忎竴涓猼oken鐨勮鍒欙紝鐒跺悗鑷繁鍘誨啓鍐欑湅銆?</font> <p><font size=2><strong>浠g爜瀵艱</strong> </font> <p><font size=2>    鍦ㄦ湰鑺傛垜灝嗘彁渚沰l鍦╣ooglecode鐨凷VN涓婄殑浠g爜錛屽厛涓嶈鍘葷浠g爜鍖呬腑鐨勫叾浠栦笢瑗褲傚叧浜?br>璇嶆硶鐨勪唬鐮佸彲浠ュ湪kllex.c kllex.h涓壘鍒般俵ex_token鏄彁渚涚粰鍏朵粬妯″潡鐨勬帴鍙o紝鐢ㄤ簬鑾峰彇<br>褰撳墠鎵弿鐨則oken銆傛壂鎻忕粨鏋滃彲浠ラ氳繃lexState緇撴瀯浣撹幏鍙栥?br>    鍐嶆鎻愪笅鐗堟潈闂錛屼唬鐮佹枃浠朵互鍙婁唬鐮佸寘涓垜騫舵病鏈夊姞鍏ヤ換浣曠増鏉冭鏄庯紝鍝曟槸GPL銆?br>浣嗘槸濡傚悓鎴戜箣鍓嶈鐨勪竴鏍鳳紝鎴戜笉浠嬫剰浣犱紶鎾佹敼鍔ㄦ浠g爜錛屼絾鏄淇濈暀鍘熶綔鑰呬俊鎭傚綋鐒訛紝<br>鎴戝茍涓嶄粙鎰忎綘鍔犱笂@modified by xxx:)銆?</font> <p><font size=2>    涓嬭澆kl婧愪唬鐮侊細</font><a ><font size=2>http://klcommon.googlecode.com/files/kllan_0.1.0.zip</font></a></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/75816.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-07 13:43 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/07/75816.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堜簩錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75751.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Fri, 06 Mar 2009 08:01:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75751.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/75751.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75751.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/75751.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/75751.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.6.2009 </font> <p><font size=2><strong>璇█鐗規?/strong> </font> <p><font size=2>    鍦ㄦ寮忚璁哄疄鐜扮粏鑺傚墠鏄庣‘涓嬭繖涓剼鏈璦鐨勪竴浜涜璦鐗規э紝鍩烘湰涓婂彲浠ヨ鎴戜滑棰勮灝?br>鏉ヤ細閬囧埌鍝簺闅鵑銆傛葷殑鏉ヨ錛屽畠錛堣剼鏈級灝嗗悓鎴戜滑騫蟲椂鎺ヨЕ鐨勫lua涓鏍風殑鑴氭湰璇█錛氭嫢<br>鏈変竴鑸殑緙栫▼璇█鐗規э紝濡傚彉閲忋佸悇縐嶆帶鍒舵祦紼嬨佷篃璁歌繕鏈夊嚱鏁幫紝鍙︿竴鏂歸潰瀹冭繕搴旇鍜屽畠鐨?br>瀹夸富璇█緇撳悎錛屽浣滀負涓涓簱琚敤榪汣錛岃繖榪樻秹鍙婂埌緇欒繖闂ㄨ璦璁捐涓縐嶆彃浠舵柟寮忥紝鏈濂借兘<br>閫氳繃鐙珛鐨勮В閲婄▼搴忚鑴氭湰杞藉叆涓浜涙彃浠惰繍琛屻?</font> <p><font size=2>    浠ヤ笅鍦ㄦ弿榪版垜鍐欑殑榪欎釜鑴氭湰璇█鏃訛紝灝嗕互kl琛ㄧず瀹冪殑鍚嶅瓧錛屼互鏂逛究鎻忚堪銆?</font> <p><font size=2><strong>浠g爜鍧楋細</strong> </font> <p><font size=2>    棣栧厛浠庢暣浣撻鏍間笂錛宬l濡傚悓C璇█涓鏍瘋鍒掑垎涓哄嚱鏁板潡錛屽錛?br>    function func1()<br>    {<br>    }<br>    function func2()<br>    {<br>    }<br>    ...<br>    kl鏀寔浠}闅旂浠g爜鍧楋紝浣嗘槸榪欏茍涓嶆剰鍛崇潃kl鏈夊涓嫭绔嬬殑灞閮ㄥ爢鏍堬紝濡傚悓C璇█涓鏍楓?br>榪欎簺緇嗚妭鏆備笉璁ㄨ銆傛湰鑺傛弿榪扮殑鎵鏈夊唴瀹逛綘閮戒笉蹇呮繁絀訛紝鍥犱負鎴戝彧瑕佹眰浣犲kl鏈変釜鎰熸т笂鐨?br>璁よ瘑銆?br>    鍑芥暟鍧椾箣澶栨病鏈夊彲鎵ц鐨勮鍙?statement)銆傞偅涔堜綘鍙兘浼氭兂鍒扮▼搴忕殑鍏ュ彛鐐逛篃璁鎬細鏄?br>main銆備簨瀹炰笂浠巏l鎻愪緵鐨勫簱鏉ョ湅錛屽茍娌℃湁榪欑紜ц姹傘備絾鏄紝kl鐨勭嫭绔嬭В閲婄▼搴忔槸榪欐牱瑕?br>姹傜殑銆?nbsp;   </font> <p><font size=2><strong>鍙橀噺錛?/strong> </font> <p><font size=2>    kl鍏佽浣犲湪浠諱綍鍦版柟浣跨敤涓涓彉閲忋傚彉閲忎笉闇瑕佷簨鍏堝畾涔夛紝浠諱綍鍦版柟鍑虹幇涓涓悎<br>娉曠殑鏍囪瘑絎︽椂錛屽氨鎰忓懗鐫kl鍐呴儴浼氬鍔犺繖涓彉閲忥紝騫剁粰浜堝垵鍊箋傚彉閲忎篃娌℃湁闈欐佺被鍨嬶紝涔熶笉<br>浼氬浐瀹氫負鏌愪竴綾誨瀷銆傚氨涓闂ㄦ渶綆鍗曠殑璇█鏉ョ湅錛屾垜瑙夊緱鏁版嵁綾誨瀷鏃犻潪灝辨槸瀛楃涓插拰鏁板瓧綾誨瀷<br>銆?br>    鎵浠ワ紝kl鐨勫彉閲忓湪鏌愪竴鏃跺埢蹇呯劧鏄暟瀛楋紝鎴栬呭瓧絎︿覆銆傚湪鑴氭湰閲岋紝浣犳棤娉曡幏鐭ヤ竴涓彉閲?br>鐨勭被鍨嬶紝浜嬪疄涓婁篃娌¤繖涓繀瑕併傝鍙橀噺鎷ユ湁涓涓被鍨嬪睘鎬э紝鍊掍笉濡傝鍊?value)鏈変竴縐嶇被鍨?br>灞炴с?br>    褰撳瓧絎︿覆鍊間笌鏁板瓧鍊煎弬涓庤繍綆楁椂錛屽1+"a"錛屽叾榪愮畻緇撴灉灝嗚嚜鍔ㄨ漿鎹負瀛楃涓詫紝涔熷氨鏄?br>"1a"銆?br>    涓涓彧鏈夋爣璇嗙鐨勮鍙?statement)閫氬父鎰忓懗鐫浣犳兂瀹氫箟涓涓彉閲忋傝繖縐嶆棤鑱婄殑鎵嬫閫?br>甯歌鐢ㄤ簬瀹氫箟鍏ㄥ眬鍙橀噺銆?</font> <p><font size=2><strong>榪愮畻絎︼細</strong> </font> <p><font size=2>    kl鏀寔涓鑸殑C璇█椋庢牸鐨勭畻鏈佹瘮杈冦侀昏緫榪愮畻絎︺備緥濡傚姞鍑忎箻闄ゃ佸ぇ浜庡皬浜庛侀昏緫<br>涓庨昏緫鎴栥?</font> <p><font size=2><strong>浣滅敤鍩燂細</strong> </font> <p><font size=2>    kl鑴氭湰閲屽彧鏈変袱涓綔鐢ㄥ煙錛氬叏灞鐨勫拰灞閮ㄧ殑銆?br>    浣嶄簬鎵鏈夊嚱鏁板潡澶栫殑鍙橀噺澶勪簬鍏ㄥ眬浣滅敤鍩燂紱浣嶄簬鍑芥暟鍐呯殑鍙橀噺澶勪簬灞閮ㄤ綔鐢ㄥ煙錛屼綅浜庡嚱<br>鏁板潡鍐呯殑浠g爜鍧楀彉閲忥紝榪樻槸澶勪簬灞閮ㄤ綔鐢ㄥ煙銆?br>    褰撳眬閮ㄤ綔鐢ㄥ煙鍐呭嚭鐜頒竴涓叏灞閲岀殑鍚屽悕鍙橀噺鏃訛紝浼樺厛鍙栧眬閮ㄤ綔鐢ㄥ煙閲岀殑鍙橀噺銆傝繖鍚孋璇?br>璦涓鏍楓?</font> <p><font size=2><strong>鎺у埗璇彞if錛?br></strong>    if鐨勮娉曞悓C璇█涓鏍鳳紝濡傦細<br>    if( a > 10 )<br>    {<br>    }<br>    else<br>    {<br>    }<br>    if( a > 10 )涓殑a>10琚垜鎴愪負鏉′歡璇彞錛屾墍鏈夋潯浠惰鍙ワ紝鍖呮嫭涓嬮潰鐨剋hile錛岄兘涓嶈兘<br>涓哄瓧絎︿覆銆備緥濡俰f( "a" )灝嗚瑙嗕負闈炴硶璇彞銆傦紙鎴戜負浠涔堣榪欐牱鑰冭檻錛? -!錛?</font> <p><font size=2><strong>鎺у埗璇彞while:</strong> </font> <p><font size=2>    c-like while:<br>    while( a > 10 )<br>    {<br>    }<br>    寰堥仐鎲撅紝鎴戞殏鏃舵病鏈夊姞鍏ュfor鐨勬敮鎸併傚洜涓烘垜瑙夊緱鏃㈢劧鏈変簡while錛屾湁浜嗗驚鐜帶鍒訛紝鍦?br>娌℃湁鏇村鏃犺亰鏃墮棿鐨勫墠鎻愪笅錛屾垜娌℃湁蹇呰鍔犲叆for銆?</font> <p><font size=2><strong>鍑芥暟錛?/strong> </font> <p><font size=2>    寰堥仐鎲撅紝鍑芥暟鐨勫畾涔夊拰璋冪敤鍜孋璇█鏈夌偣涓嶄竴鏍楓傝繖鏄洜涓簁l娌℃湁鍙橀噺綾誨瀷錛岄偅灝辨剰鍛?br>鐫鍑芥暟瀹氫箟濡傛灉鍜孋璇█涓鏍鳳紝灝變細鍑虹幇璇硶姝т箟錛屽錛?br>    func( a )<br>    {<br>    }<br>    灝變細鍜屽嚱鏁拌皟鐢╢unc(a)鍑虹幇娣鋒穯銆傛墍浠ワ紝鎴戝姞鍏ヤ簡function鍏抽敭瀛椼傚畾涔夊嚱鏁扮殑璇硶<br>涓猴細<br>    function func( a, b )<br>    {<br>    }<br>    濡備綘鎵瑙侊紝鍑芥暟鏀寔鍙傛暟浼犻掞紝褰撶劧涔熸敮鎸乺eturn a;榪斿洖鍊箋俴l鏄畝闄嬬殑錛屽洜涓哄畠娌?br>鏈夋寚閽堜箣綾葷殑姒傚康錛屾墍浠ヤ綘鏃犳硶涓哄嚱鏁頒紶閫掍竴鍧楁暟鎹傚綋鐒訛紝kl涔熶笉鑳藉儚lua涓鏍瘋鍑芥暟鍙?br>浠ヨ繑鍥炲涓箋?br>    鍑芥暟璋冪敤鐨勮娉曠浉瀵圭啛鎮夛細<br>    func( 1, 3 ); </font> <p><font size=2><strong>鏁扮粍錛?/strong> </font> <p><font size=2>    浠庝竴寮濮嬫垜灝辨病鑰冭檻涓簁l鍔犲叆鏁扮粍銆備簨瀹炶瘉鏄庡姞鍏ユ暟緇勬槸涓涓笉鏄庢櫤鐨勫仛娉曘傛暟緇勭殑鏀?br>鎸佽浠g爜鍦ㄥ緢澶氬湴鏂瑰彉寰楄剰涔便傛棤璁哄浣曪紝kl鍚庢潵鏀寔涓緇存暟緇勪簡銆備負浜嗚浠g爜淇濇寔閭d箞涓<br>鐐圭偣鐨勫共鍑錛屾垜鐢氳嚦涓哄畾涔夋暟緇勫姞鍏im鐨勫叧閿瓧銆傝繖鎰忓懗鐫錛屽湪kl閲岋紝鏁扮粍鍜屼竴鑸殑鍙橀噺<br>鎬繪湁鐐逛笉涓鏍鳳細鍙橀噺鏃犻渶瀹氫箟錛屾暟緇勫嵈蹇呴』浜嬪厛瀹氫箟銆?br>    鏁扮粍鐨勯暱搴︿笉鏀寔鍔ㄦ佹墿鍏呫傚鏋滄敮鎸侊紝鎴戝緱璁﹌l鍐呴儴鏇村ソ鍦板幓綆$悊鍐呭瓨銆?br>    鏁扮粍鍏冪礌鐨勭被鍨嬫病鏈夌‖鎬х殑瑙勫畾錛岃繖鎰忓懗鐫a[0] = 1; a[1] = "a";鏄厑璁哥殑銆?</font> <p><font size=2>    璇█鐗規т笂灝辨弿榪拌繖浜涳紝鍦ㄦ湰鑺傛湯灝炬垜鍐沖畾璐翠竴孌祂l璁$畻闃朵箻鐨勪唬鐮侊細 </font> <p><font size=2>/* fac.kl */<br>function main()<br>{<br>    n = input( "%d" );<br>    print( "fac(" + n + ") = " + fac( n ) );<br>} </font> <p><font size=2>function fac( n )<br>{<br>    if( n == 1 )<br>    {<br>        return 1;<br>    }<br>    else<br>    {<br>        return fac( n - 1 ) * n;<br>    }<br>} </font></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/75751.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-06 16:01 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75751.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀹炵幇涓縐嶈В閲婃ц剼鏈璦錛堜竴錛?/title><link>http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75749.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Fri, 06 Mar 2009 07:58:00 GMT</pubDate><guid>http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75749.html</guid><wfw:comment>http://www.shnenglu.com/kevinlynx/comments/75749.html</wfw:comment><comments>http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75749.html#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://www.shnenglu.com/kevinlynx/comments/commentRss/75749.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/kevinlynx/services/trackbacks/75749.html</trackback:ping><description><![CDATA[<p><font size=2>author: Kevin Lynx email: zmhn320#163.com date: 3.6.2009 </font> <p><font size=2>    錛堢浉淇℃垜錛岃繖涓鑺傚叏鏄簾璇濄傦級<br>    鎴戜笉鏄爣棰樺厷錛屼絾鏄湁蹇呰瑙i噴涓嬭繖涓爣棰樸傜患鍚堟潵璇存垜灝辨槸鎯充笌浣犲垎浜垜鎵瀛﹀埌鐨勩?br>鎴戜細灝嗘垜瀹炵幇鐨勮繖涓畝鍗曠殑鑴氭湰璇█鐨勫疄鐜扮粏鑺傚睍紺虹粰浣犮傚畠灝嗘兜鐩栵細璇嶆硶鍒嗘瀽銆佽娉曞垎鏋?br>銆佺鍙瘋〃綆$悊銆佽娉曟爲瑙i噴鎵ц銆佹彃浠剁鐞嗙瓑鍐呭銆?br>    鎴戝茍涓嶆搮闀夸紶鎺堢紪璇戝師鐞嗙煡璇嗐傛垜娌℃湁鍚繃緙栬瘧鍘熺悊璇撅紝鎵浠ユ垜涔熶笉浼氱紪璇戝師鐞嗭紙涔熻<br>鍗充嬌鎴戝惉浜嗕篃涓嶄細:D錛夈傛墍浠ュ浜庤繖鏂歸潰鐨勮兘鎵嬭岃█錛屾垜鍙d腑鐨?#8216;DFA‘鍙兘浼氳椿絎戝ぇ鏂廣?br>    鏄劇劧錛孋PPBLOG涓婃湁緙栬瘧鍘熺悊涓婄殑澶х墰銆傚鏋滀綘鎯沖涔犳洿娣卞叆鐨勭煡璇嗭紝鍙互鍘昏鏁欎粬浠?br>vczh(http://www.shnenglu.com/vczh/) 鐪嬭搗鏉ユ槸鎴戞墍璇寸殑榪欎釜浜恒傚湪鑷磋阿鍚嶅崟閲屾垜灝嗙湡璇氬湴<br>鍐欎笂浠栫殑鍚嶅瓧銆備粬鐨?#8217;鎵嬫妸鎵媥xx鑴氭湰‘緋誨垪澶氬灝戝皯榪樻槸緇欎簡鎴戜竴浜涙湁鐢ㄧ殑淇℃伅銆?br>    鍏舵鏄疐OX錛屽湪璇嶆硶鍒嗘瀽鐨凞FA鍜孨FA閭i噷鎴戣鏁欎簡浠栦竴浜涢棶棰樸傝櫧鐒舵垜鐜板湪鍙堝繕浜嗐傚<br>浣犱滑鎵鐭ワ紝鐞嗚鍜屽疄鐜頒箣闂存諱細闅旂潃楦挎矡銆?</font> <p><font size=2>    鎺ㄨ崘銆婄紪璇戝師鐞嗕笌瀹炶返銆?<Compiler Construction:Principles and Practice><br>Kenneth C. Louden)榪欐湰涔︺傚湪浣犲皢鏉ラ槄璇繪垜鐨勮剼鏈璦鐨勫疄鐜頒唬鐮佹椂錛屼綘浼氬彂鐜版湁寰堜竴浜涘湴<br>鏂瑰悓榪欐湰涔﹂噷鐨凾INY璇█瀹炵幇浠g爜鏈夌浉浼間箣澶勩傚緩璁綘闃呰TINY鐨勪唬鐮併?br>    鎰熻阿VIM銆丟CC銆丟DB銆丮ingW錛屾垜鐢ㄨ繖浜涜蔣浠跺湪宸ヤ綔涔嬩綑鍐欏嚭浜嗚繖涓笢瑗跨殑鍑犲崈琛孋浠g爜銆?br>寰堟槑鏄炬垜鏄釜寮婧愭枃鍖栫殑鐖卞ソ鑰呫備絾鏄垜涓嶄細鍛婅瘔浣爑nix鏈夊涔堝涔堝ソ錛屽洜涓烘垜涔熸槸涓垵瀛?br>鑰咃紝鎴戣繕涓嶆噦unix銆傚紑婧愬湪鎴戠湅鏉ユ洿鏄竴縐嶅垎浜煡璇嗙殑綺劇銆傝榪欑綺劇濡傚悓GPL涓鏍風梾姣?br>寮忓湴浼犳煋涓嬪幓銆?br>    榪樻湁鐗堟潈闂銆備絾涔熻瀹冧笉鏄釜闂銆傛垜涓嶄細娣誨姞浠諱綍鐗堟潈淇℃伅銆傛垜鍏佽浣犱換鎰忎紶鎾?br>鏀瑰姩鎴戞墍鏁f挱鐨勪笢瑗匡紝浣嗘槸鍞竴鐨勫熀鏈潯浠舵槸錛氫繚鐣欎綔鑰呯殑淇℃伅---涓嶈鍛婅瘔鍒漢錛岃繖涓滆タ<br>鏄綘鍋氱殑銆?</font> <p><font size=2>    鍦ㄦ墍鏈夌殑鏂囩珷鍙戝竷鍚庯紝鎴戦兘鍙兘浼氬啀嬈′慨鏀廣備篃璁擱氳繃RSS鎴栬呮棩蹇楁棩鏈熶箣綾諱綘鍙互鑾?br>寰椾慨鏀規彁閱掋?</font> <p><font size=2></font></p> <img src ="http://www.shnenglu.com/kevinlynx/aggbug/75749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2009-03-06 15:58 <a href="http://www.shnenglu.com/kevinlynx/archive/2009/03/06/75749.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://www.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://342008.com" target="_blank">久久免费精品视频</a>| <a href="http://226600b.com" target="_blank">欧美在线免费视屏</a>| <a href="http://959425.com" target="_blank">香蕉久久夜色精品国产</a>| <a href="http://ttdy20.com" target="_blank">欧美成人a视频</a>| <a href="http://7234hh.com" target="_blank">新狼窝色av性久久久久久</a>| <a href="http://373336.com" target="_blank">欧美激情精品</a>| <a href="http://060607.com" target="_blank">一区在线免费</a>| <a href="http://998609.com" target="_blank">久久久久国产精品麻豆ai换脸</a>| <a href="http://www-964664.com" target="_blank">亚洲欧美日韩精品久久奇米色影视</a>| <a href="http://www4455va.com" target="_blank">嫩草国产精品入口</a>| <a href="http://qhzyxcd.com" target="_blank">正在播放欧美视频</a>| <a href="http://aabbcc11.com" target="_blank">亚洲一区二区精品在线观看</a>| <a href="http://qdpetlove.com" target="_blank">欧美色欧美亚洲另类七区</a>| <a href="http://555yye.com" target="_blank">久久精品日韩</a>| <a href="http://zyjdxx.com" target="_blank">欧美大片一区</a>| <a href="http://xw4433.com" target="_blank">午夜精品福利一区二区蜜股av</a>| <a href="http://55psd.com" target="_blank">一区二区三区福利</a>| <a href="http://wocao1997.com" target="_blank">国产精品视频久久久</a>| <a href="http://2502255.com" target="_blank">久久久久久综合</a>| <a href="http://988tz.com" target="_blank">欧美成年网站</a>| <a href="http://2061856.com" target="_blank">久久免费偷拍视频</a>| <a href="http://www9797abc.com" target="_blank">欧美日韩网址</a>| <a href="http://www-06654.com" target="_blank">麻豆国产精品一区二区三区</a>| <a href="http://dehuabz.com" target="_blank">国产精品久久久久aaaa樱花</a>| <a href="http://23230066.com" target="_blank">免费在线成人</a>| <a href="http://obatshaka.com" target="_blank">国产综合久久久久久</a>| <a href="http://nmbgbc.com" target="_blank">亚洲精品婷婷</a>| <a href="http://ycgg008.com" target="_blank">亚洲第一黄色网</a>| <a href="http://04oy.com" target="_blank">久久国产精品毛片</a>| <a href="http://ckk755.com" target="_blank">欧美中文字幕在线</a>| <a href="http://lcqrsj.com" target="_blank">国产精品白丝jk黑袜喷水</a>| <a href="http://gzpurefaith.com" target="_blank">老妇喷水一区二区三区</a>| <a href="http://huaihuaihuai.com" target="_blank">国产精品视频内</a>| <a href="http://www-136445.com" target="_blank">91久久精品www人人做人人爽 </a>| <a href="http://7878168.com" target="_blank">欧美—级高清免费播放</a>| <a href="http://725443.com" target="_blank">久久久久久噜噜噜久久久精品</a>| <a href="http://www-662553.com" target="_blank">国产精品系列在线</a>| <a href="http://cc1024.com" target="_blank">欧美中文字幕久久</a>| <a href="http://aaa211.com" target="_blank">美女福利精品视频</a>| <a href="http://9kkkb.com" target="_blank">怡红院精品视频在线观看极品</a>| <a href="http://486be.com" target="_blank">香蕉久久一区二区不卡无毒影院 </a>| <a href="http://48488a.com" target="_blank">国内精品模特av私拍在线观看</a>| <a href="http://123yongjiu.com" target="_blank">亚洲一区成人</a>| <a href="http://www-772773.com" target="_blank">久久精品国产一区二区三</a>| <a href="http://hzjqkj.com" target="_blank">国产一区二区三区久久</a>| <a href="http://77xyc77.com" target="_blank">午夜日韩视频</a>| <a href="http://hehextv.com" target="_blank">欧美99久久</a>| <a href="http://kk8c.com" target="_blank">亚洲精品乱码久久久久久按摩观</a>| <a href="http://by4425.com" target="_blank">久久久久久久综合狠狠综合</a>| <a href="http://4449992.com" target="_blank">久久天天狠狠</a>| <a href="http://2323nn.com" target="_blank">亚洲少妇自拍</a>| <a href="http://961318.com" target="_blank">国产一区二区三区在线观看免费视频 </a>| <a href="http://7kz6.com" target="_blank">久久久久久精</a>| <a href="http://8842aa.com" target="_blank">夜夜夜精品看看</a>| <a href="http://123-sj.com" target="_blank">激情一区二区三区</a>| <a href="http://xprinter3d.com" target="_blank">国产精品久久久久999</a>| <a href="http://17ang.com" target="_blank">久久精品夜色噜噜亚洲a∨ </a>| <a href="http://193youwu.com" target="_blank">91久久在线</a>| <a href="http://www-273111.com" target="_blank">欧美人与性动交α欧美精品济南到 </a>| <a href="http://sz-jyqj.com" target="_blank">久久一综合视频</a>| <a href="http://5588207.com" target="_blank">国产一区二区日韩精品欧美精品</a>| <a href="http://xashp.com" target="_blank">久久久久这里只有精品</a>| <a href="http://478884.com" target="_blank">亚洲三级影片</a>| <a href="http://hnjlhgw.com" target="_blank">欧美亚洲综合网</a>| <a href="http://spyfaw.com" target="_blank">午夜欧美大片免费观看</a>| <a href="http://ks180.com" target="_blank">91久久久久久久久久久久久</a>| <a href="http://02326a.com" target="_blank">国产日本欧美在线观看</a>| <a href="http://jzsp101.com" target="_blank">欧美系列精品</a>| <a href="http://by1422.com" target="_blank">欧美精品久久99久久在免费线</a>| <a href="http://hernameplz.com" target="_blank">亚洲日本中文</a>| <a href="http://wzxjzx.com" target="_blank">老司机aⅴ在线精品导航</a>| <a href="http://56x6.com" target="_blank">亚洲一区二区三区高清不卡</a>| <a href="http://xvideoxxnx.com" target="_blank">亚洲国产视频a</a>| <a href="http://1177898.com" target="_blank">尤物网精品视频</a>| <a href="http://bjzgmember.com" target="_blank">黄色成人在线网站</a>| <a href="http://eeii33.com" target="_blank">在线欧美视频</a>| <a href="http://5138555.com" target="_blank">亚洲国产精品电影在线观看</a>| <a href="http://www7495.com" target="_blank">狠狠色综合播放一区二区</a>| <a href="http://7788444.com" target="_blank">国产精品免费区二区三区观看</a>| <a href="http://go1818.com" target="_blank">免费在线看成人av</a>| <a href="http://cp3824.com" target="_blank">久久久久在线</a>| <a href="http://bjygp.com" target="_blank">欧美亚一区二区</a>| <a href="http://hnspygxjscyfwzx.com" target="_blank">国产精品久久久久永久免费观看 </a>| <a href="http://b871.com" target="_blank">一区精品在线播放</a>| <a href="http://4123123.com" target="_blank">99视频精品全国免费</a>| <a href="http://dh03.com" target="_blank">国产精品99久久久久久白浆小说</a>| <a href="http://hbdfgq.com" target="_blank">亚洲精品资源美女情侣酒店</a>| <a href="http://haole081.com" target="_blank">aaa亚洲精品一二三区</a>| <a href="http://ae262.com" target="_blank">一区二区电影免费观看</a>| <a href="http://478884.com" target="_blank">一区二区三区日韩在线观看</a>| <a href="http://pinyuanad.com" target="_blank">亚洲欧美综合精品久久成人</a>| <a href="http://www-067.com" target="_blank">午夜欧美大尺度福利影院在线看</a>| <a href="http://eshop999.com" target="_blank">久久精品在线播放</a>| <a href="http://www-5888c.com" target="_blank">一区二区久久</a>| <a href="http://033232.com" target="_blank">久久久999精品免费</a>| <a href="http://345kt.com" target="_blank">欧美激情一二区</a>| <a href="http://jxrisen.com" target="_blank">国产综合精品一区</a>| <a href="http://alio-ai.com" target="_blank">国产精品99久久久久久宅男</a>| <a href="http://caopanjia.com" target="_blank">性久久久久久久久</a>| <a href="http://airsixth.com" target="_blank">国产一区二区三区在线播放免费观看</a>| <a href="http://012488.com" target="_blank">亚洲国产精品成人综合色在线婷婷</a>| <a href="http://wwwsenvpu.com" target="_blank">午夜亚洲影视</a>| <a href="http://xxoo668.com" target="_blank">91久久精品国产91久久性色tv</a>| <a href="http://www-e2222.com" target="_blank">一区二区三区精密机械公司</a>| <a href="http://5b6c.com" target="_blank">麻豆成人在线</a>| <a href="http://atmub.com" target="_blank">国产精品二区三区四区</a>| <a href="http://xian369.com" target="_blank">亚洲国产精品黑人久久久</a>| <a href="http://njhuike.com" target="_blank">欧美影院成年免费版</a>| <a href="http://788111c.com" target="_blank">中文精品视频</a>| <a href="http://oksousou.com" target="_blank">欧美激情亚洲激情</a>| <a href="http://4006616309.com" target="_blank">日韩一本二本av</a>| <a href="http://jiarenlady.com" target="_blank">欧美激情一二三区</a>| <a href="http://xissy.com" target="_blank">久久亚洲影音av资源网</a>| <a href="http://www8xoy.com" target="_blank">国产欧美日本一区视频</a>| <a href="http://www278999.com" target="_blank">亚洲宅男天堂在线观看无病毒</a>| <a href="http://k91cm.com" target="_blank">免费在线日韩av</a>| <a href="http://05ec.com" target="_blank">久久在线视频</a>| <a href="http://17ccem.com" target="_blank">亚洲国内在线</a>| <a href="http://777888789.com" target="_blank">日韩图片一区</a>| <a href="http://605799.com" target="_blank">欧美国产先锋</a>| <a href="http://498626.com" target="_blank">中日韩美女免费视频网址在线观看</a>| <a href="http://filark.com" target="_blank">亚洲国产日韩欧美综合久久</a>| <a href="http://119552.com" target="_blank">久久精品人人爽</a>| <a href="http://hnjlhgw.com" target="_blank">91久久精品国产91性色</a>| <a href="http://www-888005.com" target="_blank">欧美黄色aa电影</a>| <a href="http://686852a.com" target="_blank">欧美日韩精品一区二区在线播放 </a>| <a href="http://668756.com" target="_blank">亚洲欧美中文日韩v在线观看</a>| <a href="http://99cheats.com" target="_blank">国产精品久久精品日日</a>| <a href="http://91nbs.com" target="_blank">久久高清一区</a>| <a href="http://xjksrbh.com" target="_blank">欧美激情欧美狂野欧美精品</a>| <a href="http://susan5.com" target="_blank">亚洲网站在线看</a>| <a href="http://621768.com" target="_blank">久久gogo国模啪啪人体图</a>| <a href="http://cgnwp.com" target="_blank">亚洲欧洲一区二区天堂久久</a>| <a href="http://www-4997.com" target="_blank">一区二区三区久久精品</a>| <a href="http://dxmdzz.com" target="_blank">国内精品福利</a>| <a href="http://easypufu.com" target="_blank">99国产精品</a>| <a href="http://heyzo1031.com" target="_blank">国产一区二区精品</a>| <a href="http://lcqrsj.com" target="_blank">亚洲精品中文在线</a>| <a href="http://987527.com" target="_blank">亚洲国产视频一区二区</a>| <a href="http://778kb.com" target="_blank">午夜精品视频在线观看</a>| <a href="http://wwwsao117.com" target="_blank">欧美在线亚洲一区</a>| <a href="http://227c7.com" target="_blank">亚洲在线中文字幕</a>| <a href="http://hakuihoso.com" target="_blank">欧美老女人xx</a>| <a href="http://077229.com" target="_blank">男女激情久久</a>| <a href="http://k91cm.com" target="_blank">亚洲东热激情</a>| <a href="http://7m08.com" target="_blank">久久精品女人天堂</a>| <a href="http://hazymall.com" target="_blank">亚洲第一色在线</a>| <a href="http://4466o.com" target="_blank">久久久www</a>| <a href="http://yw6632.com" target="_blank">久久资源在线</a>| <a href="http://zzztt04.com" target="_blank">国产欧美一区二区精品秋霞影院</a>| <a href="http://julong-ads.com" target="_blank">一区二区冒白浆视频</a>| <a href="http://jxrisen.com" target="_blank">一本色道久久综合亚洲精品不卡</a>| <a href="http://777777hb.com" target="_blank">久久免费国产精品</a>| <a href="http://njggmy.com" target="_blank">麻豆成人在线观看</a>| <a href="http://www-s8.com" target="_blank">国产综合色精品一区二区三区</a>| <a href="http://www-94889.com" target="_blank">久久久国产精品亚洲一区</a>| <a href="http://5254f.com" target="_blank">久久这里有精品视频 </a>| <a href="http://www-888005.com" target="_blank">性亚洲最疯狂xxxx高清</a>| <a href="http://25axxa.com" target="_blank">亚洲你懂的在线视频</a>| <a href="http://k-dchina.com" target="_blank">国产精品日韩在线</a>| <a href="http://53xxxx.com" target="_blank">欧美专区在线观看</a>| <a href="http://tzhsdy.com" target="_blank">亚洲国产另类久久精品</a>| <a href="http://zunguidq.com" target="_blank">一本色道久久综合亚洲精品不</a>| <a href="http://118017.com" target="_blank">欧美日韩亚洲综合一区</a>| <a href="http://lzklpc.com" target="_blank">亚洲天堂网在线观看</a>| <a href="http://8946286.com" target="_blank">久久精品水蜜桃av综合天堂</a>| <a href="http://26cs.com" target="_blank">亚洲欧洲视频</a>| <a href="http://njggmy.com" target="_blank">国产精品主播</a>| <a href="http://338pv.com" target="_blank">欧美精品一区二区三区蜜桃</a>| <a href="http://373336.com" target="_blank">亚洲一区二区三区高清</a>| <a href="http://www330088.com" target="_blank">久久婷婷国产综合国色天香</a>| <a href="http://lexueit.com" target="_blank">日韩系列在线</a>| <a href="http://www-662553.com" target="_blank">狠狠久久五月精品中文字幕</a>| <a href="http://v58q.com" target="_blank">欧美三区视频</a>| <a href="http://www3344xz.com" target="_blank">国产精品亚洲产品</a>| <a href="http://www4455va.com" target="_blank">久久综合中文</a>| <a href="http://3534m.com" target="_blank">亚洲手机在线</a>| <a href="http://yunduaner.com" target="_blank">久久国产精品99国产精</a>| <a href="http://xkm663y.com" target="_blank">国内精品伊人久久久久av一坑</a>| <a href="http://1392266.com" target="_blank">久久亚洲综合网</a>| <a href="http://390642.com" target="_blank">麻豆精品在线观看</a>| <a href="http://74va.com" target="_blank">亚洲夫妻自拍</a>| <a href="http://zhhtianyi.com" target="_blank">久久久另类综合</a>| <a href="http://312012.com" target="_blank">久久―日本道色综合久久</a>| <a href="http://862924.com" target="_blank">久久国产日本精品</a>| <a href="http://wwwmiya728.com" target="_blank">亚洲欧美日韩综合</a>| <a href="http://zjjieda.com" target="_blank">欧美在线影院在线视频</a>| <a href="http://777777hb.com" target="_blank">久久国产福利国产秒拍</a>| <a href="http://160160160.com" target="_blank">亚洲欧美精品suv</a>| <a href="http://70909g.com" target="_blank">欧美在线三区</a>| <a href="http://5474hu.com" target="_blank">久久女同精品一区二区</a>| <a href="http://246767.com" target="_blank">在线观看91精品国产入口</a>| <a href="http://kk553.com" target="_blank">91久久精品国产91久久性色tv </a>| <a href="http://clgtzz.com" target="_blank">亚洲一二三区在线</a>| <a href="http://828121.com" target="_blank">午夜亚洲性色福利视频</a>| <a href="http://6661639.com" target="_blank">美女成人午夜</a>| <a href="http://qkspvip.com" target="_blank">欧美香蕉视频</a>| <a href="http://by33336.com" target="_blank">亚洲精品乱码久久久久</a>| <a href="http://wocao1997.com" target="_blank">午夜精品成人在线视频</a>| <a href="http://bjygp.com" target="_blank">欧美在现视频</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>