锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久国产精品久久w女人spa,国产免费观看久久黄,欧美色网一区二区http://m.shnenglu.com/lapcca/涓撴敞浜庣綉緇滃崗璁?緋葷粺搴曞眰,鏈嶅姟鍣ㄨ蔣浠?/description>zh-cnSun, 16 Nov 2025 00:09:49 GMTSun, 16 Nov 2025 00:09:49 GMT60Linux涓媘akefile鏁欑▼http://m.shnenglu.com/lapcca/archive/2012/06/06/177838.html闃肯闃肯Wed, 06 Jun 2012 14:57:00 GMThttp://m.shnenglu.com/lapcca/archive/2012/06/06/177838.htmlhttp://m.shnenglu.com/lapcca/comments/177838.htmlhttp://m.shnenglu.com/lapcca/archive/2012/06/06/177838.html#Feedback3http://m.shnenglu.com/lapcca/comments/commentRss/177838.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/177838.html闃呰鍏ㄦ枃

闃肯 2012-06-06 22:57 鍙戣〃璇勮
]]>
Delete Gmail accounthttp://m.shnenglu.com/lapcca/archive/2012/03/24/168825.html闃肯闃肯Sat, 24 Mar 2012 13:04:00 GMThttp://m.shnenglu.com/lapcca/archive/2012/03/24/168825.htmlhttp://m.shnenglu.com/lapcca/comments/168825.htmlhttp://m.shnenglu.com/lapcca/archive/2012/03/24/168825.html#Feedback0http://m.shnenglu.com/lapcca/comments/commentRss/168825.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/168825.html

闃肯 2012-03-24 21:04 鍙戣〃璇勮
]]>
c++ 涓叧浜巌nt錛寀nsigned int , short鐨勮法騫沖彴縐繪http://m.shnenglu.com/lapcca/archive/2011/04/15/144302.html闃肯闃肯Fri, 15 Apr 2011 06:02:00 GMThttp://m.shnenglu.com/lapcca/archive/2011/04/15/144302.htmlhttp://m.shnenglu.com/lapcca/comments/144302.htmlhttp://m.shnenglu.com/lapcca/archive/2011/04/15/144302.html#Feedback5http://m.shnenglu.com/lapcca/comments/commentRss/144302.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/144302.html__int16銆乢_int32榪欑鏁版嵁綾誨瀷鍦ㄦ墍鏈夊鉤鍙頒笅閮藉垎閰嶇浉鍚岀殑瀛楄妭銆傛墍浠ュ湪縐繪涓婁笉瀛樺湪闂銆?br />鎵璋撶殑涓嶅彲縐繪鏄寚錛氬湪涓涓鉤鍙頒笂緙栧啓鐨勪唬鐮佹棤娉曟嬁鍒板彟涓涓鉤鍙頒笂榪愯鏃訛紝涓嶈兘杈懼埌鏈熸湜鐨勮繍琛岀粨鏋?/span>銆?br />渚嬪錛氬湪32涓哄鉤鍙頒笂錛堟墍璋?2浣嶅鉤鍙版槸鎸囬氱敤瀵勫瓨鍣ㄧ殑鏁版嵁瀹藉害鏄?2錛夌紪鍐欎唬鐮侊紝int 綾誨瀷鍒嗛厤4涓瓧鑺傦紝鑰屽湪16浣嶅鉤鍙版槸鍒欏垎閰?涓瓧鑺傦紝閭d箞鍦?6浣嶄笂緙栬瘧鍑烘潵鐨別xe錛?br />鍏朵腑鏄負int鍒嗛厤2瀛楄妭錛岃屽湪32浣嶅鉤鍙頒笂榪愯鏃訛紝浼氭寜鐓?涓瓧鑺傛潵瑙f瀽錛屾樉鐒朵細鍑洪敊璇殑錛侊紒

鑰屽浜庨潪int琛岋紝鐩墠涓烘錛屾墍鏈夌殑綾誨瀷鍒嗛厤鐨勫瓧鑺傛暟閮芥槸鍏煎鐨勶紝鍗充笉鍚屽鉤鍙板浜庡悓涓涓被鍨嬪垎閰嶇浉鍚岀殑瀛楄妭鏁幫紒錛?br />
寤鴻錛氬湪浠g爜涓敖閲忛伩鍏嶄嬌鐢╥nt綾誨瀷錛屾牴鎹笉鍚岀殑闇瑕佸彲浠ョ敤short,long,unsigned int 絳変唬鏇褲?br />
涓嬮潰鏄悇涓被鍨嬩竴瑙堣〃銆愯漿銆?br />

64浣嶆寚鐨勬槸cpu閫氱敤瀵勫瓨鍣ㄧ殑鏁版嵁瀹藉害鏄?4浣嶇殑銆?/p>

鏁版嵁綾誨瀷鍚嶇О瀛楄妭鏁?/strong>鍒悕鍙栧艱寖鍥?/font>
int*signed,signed int鐢?a target="_blank">鎿嶄綔緋葷粺鍐沖畾錛屽嵆涓庢搷浣滅郴緇熺殑錛傚瓧闀匡紓鏈夊叧
unsigned int*unsigned鐢辨搷浣滅郴緇熷喅瀹氾紝鍗充笌鎿嶄綔緋葷粺鐨勶紓瀛楅暱錛傛湁鍏?/font>
__int81char,signed char鈥?28 鍒?127
__int162short,short int,signed short int鈥?2,768 鍒?32,767
__int324signed,signed int鈥?,147,483,648 鍒?2,147,483,647
__int648鏃?/font>鈥?,223,372,036,854,775,808 鍒?9,223,372,036,854,775,807
bool1鏃?/font>false 鎴?true
char1signed char鈥?28 鍒?127
unsigned char1鏃?/font>0 鍒?255
short2short int,signed short int鈥?2,768 鍒?32,767
unsigned short2unsigned short int0 鍒?65,535
long4long int,signed long int鈥?,147,483,648 鍒?2,147,483,647
long long8none (but equivalent to __int64)鈥?,223,372,036,854,775,808 鍒?9,223,372,036,854,775,807
unsigned long4unsigned long int0 鍒?4,294,967,295
enum*鏃?/font>鐢辨搷浣滅郴緇熷喅瀹氾紝鍗充笌鎿嶄綔緋葷粺鐨勶紓瀛楅暱錛傛湁鍏?/font>
float4鏃?/font>3.4E +/- 38 (7 digits)
double8鏃?/font>1.7E +/- 308 (15 digits)
long double8鏃?/font>1.7E +/- 308 (15 digits)
wchar_t2__wchar_t0 鍒?65,535
綾誨瀷鏍囪瘑絎?/td>綾誨瀷璇存槑闀垮害
錛堝瓧鑺傦級
鑼冨洿澶囨敞
char瀛楃鍨?/td>1-128 ~ 127-27 ~ (27 -1)
unsigned char鏃犵瀛楃鍨?/td>10 ~ 2550 ~ (28 -1)
short int鐭暣鍨?/td>2-32768 ~ 327672-15 ~ (215 - 1)
unsigned short int鏃犵鐭暣鍨?/td>20 ~ 655350 ~ (216 - 1)
int鏁村瀷4-2147483648 ~ 2147483647-231 ~ (231 - 1)
unsigned int鏃犵鏁村瀷40 ~ 42949672950 ~ (232-1)
float瀹炲瀷錛堝崟綺懼害錛?/td>41.18*10-38 ~ 3.40*10387浣嶆湁鏁堜綅
double瀹炲瀷錛堝弻綺懼害錛?/td>82.23*10-308 ~ 1.79*1030815浣嶆湁鏁堜綅
long double瀹炲瀷錛堥暱鍙岀簿搴︼級103.37*10-4932 ~ 1.18*10493219浣嶆湁鏁堜綅




闃肯 2011-04-15 14:02 鍙戣〃璇勮
]]>
銆愯漿甯栥戦潚騫翠拱涓嶈搗鎴挎鑷潃鎶樺皠鍥涘ぇ鎮插搥 http://m.shnenglu.com/lapcca/archive/2010/12/01/135128.html闃肯闃肯Wed, 01 Dec 2010 01:38:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/12/01/135128.htmlhttp://m.shnenglu.com/lapcca/comments/135128.htmlhttp://m.shnenglu.com/lapcca/archive/2010/12/01/135128.html#Feedback4http://m.shnenglu.com/lapcca/comments/commentRss/135128.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/135128.html
闈掑勾鍜屽コ鏈嬪弸涓璧蜂粠鑰佸鍒板ぇ榪炴墦宸ワ紝鐑亱涓紝濂蟲湅鍙嬪憡璇変粬娌℃湁鎴垮瓙鍒兂緇撳銆傞潚騫存病鏈夊お澶氱殑縐搫鏍規湰灝變拱涓嶈搗鎴垮瓙錛屽湪鑻﹀姖涓涓湀鏃犳灉鍚庤闈掑勾涓嶆兂媧諱簡錛屾鍗ц建鑷潃銆傞搧璺皯璀﹀彂鐜板噯澶囧鐭鐨勯潚騫村悗錛岃拷鍑?00澶氱背灝嗗叾鈥滄姄浣忊濓紝緇忚繃寮瀵肩粓浜庝嬌闈掑勾鏀懼純浜嗗鐭鐨勫康澶淬?br />
璇葷艦姝ゆ柊闂伙紝絎旇呭績鎯呮棤姣旀矇閲嶏紝鍥犱負榪欐牱鍗沖皢鍙戠敓鐨勬偛鍓х粷涓嶆槸涓銆傜瑪鑰呭洜涓氬姟鍏崇郴璁よ瘑涓涓仛璁捐鐨勫勾杞諱漢錛屾湀钖?000鐨勪粬鍦ㄤ竴瀹剁煡鍚嶆ā鍏峰叕鍙鎬換璁捐閮ㄧ粡鐞嗐傚湪鎴戜滑浜ゅ線榪囩▼涓紝浠栫粰絎旇呯殑鍗拌薄鏄嫟濂嬨佹暚涓氥佷笓涓氾紝涓烘錛岀瑪鑰呴潪甯哥湅閲嶄粬銆傛湁涓澶╋紝鎴戜滑鐩哥害璋堣璁℃柟妗堟椂錛岀瑪鑰呴潪甯歌寮傚湴鍙戠幇鍘熸湰婊″ご榛戝彂鐨勪粬錛屽眳鐒跺湪鐭煭鍗婃湀娌¤鐨勬儏鍐典笅鍙樺緱澶村彂鑺辯櫧銆佽劯鍨嬫竻鐦︺佺溂紿濇繁闄楓?br />
鏂規璋堝畬錛岀瑪鑰呰鍏跺叡榪涙櫄槨愶紝閰掕繃涓夊貳鍚庯紝灝忎紮瀛愯鍑轟粬琚鎴塊煎緱瀵濋闅懼畨錛岀簿紲炲凡榪戝穿婧冦傚洜榪欐牱鐨勪簨鐗墊秹澶浜猴紝絎旇呬篃涓嶄究澶氳錛屽彧鑳藉姖鍏朵竴瀹氳淇濋噸鑷繁鐨勮韓浣擄紝鑷充簬鎰熸儏銆佸濮婚兘鍙互鍜屽鏂瑰ソ濂芥矡閫氱殑銆傞鍚庯紝絎旇呰鍙告満閫佸皬浼欏瓙鍥炰綇澶勶紝鍦ㄥ叾紱誨紑鍚庯紝絎旇呭績閲屼箙涔呴毦浠ュ鉤闈欍?br />
鍦ㄤ腑鍥借繖鏍峰浜庣粡嫻庨珮閫熷彂灞曘佺ぞ浼氱浉瀵圭ǔ瀹氥佹皯浼楃敓媧誨凡瓚嬪瘜瑁曠殑紺句細錛屽嵈鏈夊緢澶氬勾闈掍漢琚鎴胯屽洶鎵幫紝鏈夌殑涓轟簡絳歸挶涔版埧鑺卞厜鍏ㄥ鐨勭Н钃勩佹Θ騫茬埗姣嶇殑鍏昏侀挶銆佸熷畬鏈嬪弸鐨勭敓媧昏垂錛屽啀鍚戦摱琛屼婦鍊哄緱浠ユ垚鍔熷綋浜嗘埧濂達紱鏈夌殑鍥犲疄鍦ㄦ棤鑳戒負鍔涗拱涓嶈搗鎴胯屼笌鐩告亱鐨勫コ鍙嬪垎鎵嬶紱鏈夌殑涓轟簡涔版埧綺劇宕╂簝錛涙湁鐨勪負浜嗕拱鎴胯蛋涓婄姱緗亾璺紱鏈夌殑涓轟簡涔版埧鑷潃鈥︹?br />
鍦ㄧ瑪鑰呯湅鏉ワ紝涓浗闈掑勾浜哄洜涔頒笉璧鋒埧鑰岃儗璐熸矇閲嶇殑綺劇璐熸媴錛屾姌灝勫嚭涓浗紺句細璇稿鎮插搥錛?br />
鎮插搥涓錛氱暩楂樻埧浠鋒槸閫奸潚騫翠漢涔頒笉璧峰鎴跨殑鏈閲嶈鍘熷洜錛岃屾暣涓ぞ浼氬嵈椴滄湁鍏呭垎璁よ瘑銆傞潚騫翠漢緇撳鏄竴杈堝瓙鐨勫ぇ浜嬶紝鍦ㄥ叾緇撳鏃惰兘澶熸嫢鏈夊睘浜庤嚜宸卞強浼翠荊鐨勭埍宸㈡槸鍑犱箮緇濆ぇ澶氭暟闈掑勾浜虹殑姊︽兂銆傝屾棤鎯呯殑鐜板疄鍗存槸錛岀暩楂樻埧浠蜂護闈掑勾浜虹殑姊︽兂涓嶆柇鐮寸伃銆傚敖綆¢儴鍒嗛潚騫翠漢閫氳繃鍚勭閫斿緞銆佸埄鐢ㄥ悇縐嶆柟娉曞疄鐜頒簡鎷ユ湁浜ф潈濠氭埧鐨勬ⅵ鎯籌紝鍙叾濠氬悗鍗村洜姝よ儗璐熶簡娌夐噸鐨勫哄姟璐熸媴銆?br />
鍙ぇ澶氭暟闈掑勾浜哄嵈鍥犱拱涓嶈搗濠氭埧鑰屽鍙楃厧鐔紝涓騫曞箷鎮插墽姝e湪鎴栧嵆灝嗕笂婕斻傚浜庨潚騫翠漢涔頒笉璧峰鎴匡紝寰堝浜轟笉鑳界悊鎬х湅寰呫傛湁浜涘湴浜у埄鐩婁唬璦浜鴻闈掑勾浜轟拱涓嶈搗鎴挎槸鑷繁鍔姏鐨勪笉澶燂紱鏈変簺浜鴻闈掑勾涔頒笉璧鋒埧鏄叾瀹朵漢涓嶈兘浼稿嚭鎻存墜錛涙湁浜涗漢璇撮潚騫翠漢灝卞簲璇ヤ拱涓嶈搗鎴褲傝繖浜涗漢鍦ㄨ〃榪拌繖鏍風殑瑙傜偣鏃訛紝澶у鎵懼嚭璇稿鐞嗙敱銆傚彲浠栦滑鍗村埢鎰忔貳鍖栨垨蹇界暐涓涓簨瀹烇紝閭e氨鏄鑷撮潚騫翠拱涓嶈搗鎴跨殑鏈閲嶈鍘熷洜鈥斺旂暩楂樻埧浠鳳紒

瀵逛簬闈掑勾涔頒笉璧峰鎴匡紝鏁翠釜紺句細緙轟箯鍏呭垎璁よ瘑錛屾皯浼楄〃鐜板嚭楹繪湪銆佸Ε鍗忋侀『浠庛傝繖浠庢暣涓ぞ浼氬浜庨珮鎴夸環鐨勬帶璇変笌鎶墊姉鏋佸叾鏃犲姏銆佹皯浼椾負浜嗗瓙濂崇粨濠氬懼敖鍏ㄥ縐搫涓哄叾涔版埧銆佸敖綆℃埧浠峰凡鐒剁暩楂樻皯浼椾緷鐒朵負鍏朵拱鍗曠瓑鍙互寰楀埌鏄庤瘉銆?br />
鎮插搥浜岋細鑽掑攼鐨勫鎭嬭銆佺埍鎯呰渚濈劧鍦ㄦ繁娣卞獎鍝嶅綋浠婄ぞ浼氥傚緢澶氫漢璁や負錛岀粨濠氬氨瑕佹嫢鏈変駭鏉冩埧錛屽彧鏈夎繖鏍鳳紝濠氬Щ鍩虹鎵嶆樉寰楃墷鍥恒傝屽湪絎旇呯湅鏉ワ紝涓や釜浜轟箣鎵浠ユ湁緇撳鐨勬兂娉曪紙鎴栨墦綆楋級錛屾槸鍙屾柟鎰熸儏鍙戝睍鍒頒簡瑕侀氳繃緇勫緩瀹跺涵鍏卞悓鐢熸椿鐨勫湴姝ワ紝鏄埍鎯呯殑鍗囧崕錛屾槸鍏卞悓鐞嗘兂鐨勭粨鏅訛紝鏄緹庡ソ鐢熸椿鐨勫叡鍚岃拷姹傦紝涔熸槸瀵圭ぞ浼氱殑璐d換銆傛墍鏈夎繖涓鍒囷紝涓庡弻鏂規槸鍚︽嫢鏈変駭鏉冩埧娌℃湁浠諱綍鍏崇郴銆?br />
鏈変漢璇達紝鐢蜂漢娌℃湁浜ф潈鎴跨殑璇濓紝灝嗗緢闅捐鏈嶅コ鍙嬩笌鑷繁璧板悜濠氬Щ鐨勬鍫傘傝繖涓瑙傜偣涔熸槸寰堣崚璋殑銆傛垜浠娓呮鑷繁瑕佹壘鐨勬槸鍏卞悓鐢熸椿鐨勪即渚h繕鏄埍鎱曡櫄鑽g殑榪囧錛屽鏋滀綘鐨勫コ鍙嬪洜娌℃湁浜ф潈鎴胯屼笉鍜屼綘緇撳錛屽彧鑳借鏄庝竴涓棶棰橈細浣犱滑鐨勬劅鎯呰繕澶勫湪杈冩祬鐨勫眰嬈★紝鏄潪甯歌剢寮辯殑錛岃繕娌℃湁杈懼埌鑳芥鍏ュ濮繪鍫傜殑鍦版錛岃繖鏍鳳紝灝遍渶瑕佽繘涓姝ュ彂灞曪紝鎴栬咃紝浣犱滑鍙屾柟鏍規湰灝變笉閫傚悎銆?br />
褰撶劧錛屼篃鏈変漢浼氳錛屾垜鐖卞コ鍙嬭儨榪囩埍鑷繁錛屽ス鐨勮姹傛垜蹇呴』婊¤凍錛岃蕩姹よ箞鐏害鍦ㄦ墍涓嶆儨錛屼綍鍐典拱鎴垮瓙鍛紵璇氱劧錛屽鎰熸儏鍏鋒湁鎵х潃鐨勭簿紲炴槸鍊煎緱璧炶祻鐨勶紝鍙鏋滀笉浠庤嚜宸辯殑瀹為檯鑳藉姏鑰冭檻鐩茬洰鍦伴氳繃璐埧鏉ュ彇鎮﹀コ鍙嬫槸鏋佷笉鍙彇鐨勩傝瘯鎯籌紝涓轟簡婊¤凍濂沖弸榪欐牱鐨勮姹傦紝浣犲皢浠樺嚭澶氬ぇ鐨勪唬浠鳳細鏈夊彲鑳芥Θ騫茬埗姣嶇殑鍏昏侀挶銆佽儗涓婃矇閲嶇殑鍊哄姟鍖呰⒈銆佷釜浜轟俊鐢ㄥ彈鍒板緢澶у獎鍝嶃佺粨濠氬悗鐢熸椿璐ㄩ噺澶ф墦鎶樻墸鈥︹?br />
涓婅堪瑙傜偣閮芥槸鑽掑攼鐨勫濮昏銆佺埍鎯呰鍦ㄤ綔鎬傚浜庣埍鐨勭悊瑙o紝鍙互璇存槸瑙佷粊瑙佹櫤銆傛垜涓璐殑瑙傜偣鏄紝涓鍔犱竴絳変簬鐖憋紝鍗充袱涓漢蹇冨績鐩稿嵃錛屼簰鐩哥悊瑙c佷簰鐩告敮鎸併佷簰鐩稿鐚紝鐢樿嫤浜庡叡銆佺浉鏁浉闅忋佸仌鑰佷竴鐢熴傜埍鏄棤縐佺殑銆佺函媧佺殑錛屾槸涓嶅彈閲戦挶銆佺墿璐ㄣ佺┖闂寸瓑闈炴儏鎰熷洜绱犲獎鍝嶇殑銆傚湪鐖辨儏鐨勫ぉ騫充笂錛屾壙杞界殑鏄叧鎬銆佸鐚佸磭鏁笌瀵圭編濂界敓媧葷殑榪芥眰涓庡悜寰銆傝岃濡傦紝閲戦挶銆佷駭鏉冩埧銆佸姏鎵涓嶈兘鍙婄殑鐗╄川闇姹備笉搴旀垚涓虹埍鎯呭ぉ騫充笂鐨勭牆鐮併?br />
鎮插搥涓夛細姘戜紬鐞嗘ф埧灞嬫秷璐規暀鑲蹭弗閲嶇己澶憋紝鏀垮簻鍙婄浉鍏抽儴闂ㄥ嵈娌¤兘涓烘鍋氬嚭瓚沖鐨勫姫鍔涖傝繎騫存潵錛岀敱浜庢埧鍦頒駭甯傚満鐨勬寔緇伀鐖嗭紝寰堝鏈笉鍏峰涔版埧瀹炲姏鐨勪漢鍦ㄥ綋鏃剁殑甯傚満鐘跺喌涓嬫姇鍏ヤ簡涔版埧鑰呰鍒楋紙鍦ㄦ垜浠韓杈癸紝榪欐牱鐨勪緥瀛愭湁寰堝錛夛紝榪欑琛屼負鍦ㄤ竴瀹氱▼搴︿笂鍔╂帹浜嗘埧浠風殑涓婃定銆傝瘹鐒訛紝鍦ㄥ綋鏃剁湅鏉ワ紝榪欑琛屼負鏃犲彲鍘氶潪錛屼篃紜湁涓閮ㄤ喚浜哄洜姝よ幏寰椾簡鎰忔兂涓嶅埌鐨勬敹鑾楓傚彲鍗存湁鏇村ぇ涓閮ㄥ垎浜哄洜鑷繁鐨勮喘鎴胯涓鴻儗涓婁簡娌夐噸鐨勫寘琚憋紝鐢氳嚦鏈夌殑浜烘垚涓烘埧濂淬傝繖灝辨槸闈炵悊鎬ф埧灞嬫秷璐硅瀵艱嚧鐨勬伓鏋溿?br />
瀵逛簬鎴垮眿娑堣垂錛屾皯浼楀ぇ澶氭槸鍑嚜宸辯殑鍒ゆ柇錛岃屾斂搴滃強鐩稿叧鏁欒偛閮ㄩ棬鍗存病鑳藉仛鍑虹悊鎬х殑寮曞銆傛棤璁烘槸鍦ㄦ暀鑲叉満鏋勶紝鍚勭被濯掍綋榪樻槸鏂囧寲浣滃搧涓紝鎴戜滑閮藉緢灝戠湅鍒板叧浜庢皯浼楃悊鎬ф埧灞嬫秷璐圭殑寮曞鍜屽浼犮傝岃繎騫存潵絎旇呬笌鐗涘垁銆佹椂瀵掑啺絳夌悊鎬у湴浜х爺絀朵漢澹墍鍙戝嚭鐨勬皯浼楃悊鎬ф埧灞嬫秷璐圭殑鍛煎悂涔熷洜緙哄皯濯掍綋鍔涙帹鑰屾飯娌″湪緗戠粶嫻鋒磱涓?br />
鎮插搥鍥涳細鍦頒駭鍟嗙敤鏉ヨ瀵奸潚騫翠漢涔版埧鐨勬墍璋撯滃垰闇鐞嗚鈥濅緷鐒跺ぇ琛屽叾閬擄紝瀵歸潚騫翠漢渚濈劧浜х敓瓚沖鐨勫獎鍝嶃傛埧鍦頒駭鍒氶渶鏄湴浜у埄鐩婄兢浣撲漢涓虹偖鍒跺嚭鏉ユ棬鍦ㄨ挋钄藉茍鐢ㄦ潵嬈鴻瘓姘戜紬鐨勪吉鍛介銆傛墍璋撳垰鎬ч渶姹傦紝鏄浉瀵逛簬寮規ч渶姹傝岃█鐨勶紝鍗沖繀欏繪弧瓚崇殑闇姹傘傚湪鐢熸椿涓紝鎴戜滑蹇呴』鍠濇按銆佸悆楗佸懠鍚哥┖姘旓紝榪欎簺鍧囦負鍒氭ч渶姹傦紝鍥犱負濡傛灉涓涓漢婊¤凍涓嶄簡榪欎簺闇姹傜殑璇濓紝灝遍毦浠ュ瓨媧匯傝岄櫎浜嗕笂榪頒笁縐嶉渶姹傚錛屾垜浠緢闅炬壘鍑鴻繕鏈変粈涔堟槸蹇呴』瑕佹弧瓚崇殑闇姹傘?br />
鎴垮湴浜у埄鐩婄兢浣撳湪榪涜鎴夸駭閿鍞椂錛屼漢涓烘潨鎾板茍鍒繪剰鍚戞皯浼楃亴杈撲竴涓蹇碉紝鍗沖洜鑷綇銆佹敼鍠勩佺粨濠氳屼拱鎴胯涓哄睘浜庡垰鎬ч渶姹傘備簨瀹炴灉鐪熷姝ゅ悧錛熸樉鐒朵笉鏄紒鍦ㄦ埧浠峰鐣擱珮鐘舵佺殑浠婂ぉ錛屾櫘閫氭皯浼椾婦鍏ㄥ涔冭嚦鏁翠釜瀹舵棌涔嬪姏錛岀敋鑷充笉鎯滈忔敮鏈潵鍗佸嚑銆佷簩鍗佸勾鐨勬敹鍏ヤ拱鎴垮畬鍏ㄦ槸涓縐嶅紓甯稿ア渚堢殑娑堣垂琛屼負銆傝繖鏍風殑琛屼負灝辯浉褰撲簬鏅氭皯浼楀搴槨愬悆灞辯弽嫻峰懗錛屽氨鐩稿綋浜庢櫘閫氭皯浼楀ぇ涓懼熻捶絀塊樋鐜涘凹瑗挎湇銆佽儗LV鍖呫佸紑瀹濋┈杞︺傚緢鏄劇劧錛岃繖鏍風殑璐拱琛屼負瀹屽叏娌℃湁蹇呰錛屾洿浣曟潵鍒氭т竴璇達紵鍐嶈呰錛岀粨濠氬氨涓瀹氬緱涔版埧鍚楋紵縐熸埧鐢熸椿灝變笉鑳芥鍏ュ濮繪鍫備簡錛熺浉淇$悊鎬х殑浜哄畾鐒朵笉璁ゅ悓緇撳涓瀹氳涔版埧鐨勮鐐廣?

闃肯 2010-12-01 09:38 鍙戣〃璇勮
]]>
C++涓殑鍥涚寮哄埗綾誨瀷杞崲鐨勫尯鍒?[杞琞http://m.shnenglu.com/lapcca/archive/2010/11/30/135081.html闃肯闃肯Tue, 30 Nov 2010 07:37:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/11/30/135081.htmlhttp://m.shnenglu.com/lapcca/comments/135081.htmlhttp://m.shnenglu.com/lapcca/archive/2010/11/30/135081.html#Feedback3http://m.shnenglu.com/lapcca/comments/commentRss/135081.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/135081.html浣跨敤鏍囧噯C++鐨勭被鍨嬭漿鎹㈢錛歴tatic_cast銆乨ynamic_cast銆乺einterpret_cast銆佸拰const_cast銆?/p>

1 static_cast

鐢ㄦ硶錛歴tatic_cast < type-id > ( expression )聽聽聽聽

璇ヨ繍綆楃鎶奺xpression杞崲涓簍ype-id綾誨瀷錛屼絾娌℃湁榪愯鏃剁被鍨嬫鏌ユ潵淇濊瘉杞崲鐨勫畨鍏ㄦс傚畠涓昏鏈夊涓嬪嚑縐嶇敤娉曪細

鈶犵敤浜庣被灞傛緇撴瀯涓熀綾誨拰瀛愮被涔嬮棿鎸囬拡鎴栧紩鐢ㄧ殑杞崲銆?/p>

聽 榪涜涓婅杞崲錛堟妸瀛愮被鐨勬寚閽堟垨寮曠敤杞崲鎴愬熀綾昏〃紺猴級鏄畨鍏ㄧ殑錛?/p>

聽 榪涜涓嬭杞崲錛堟妸鍩虹被鎸囬拡鎴栧紩鐢ㄨ漿鎹㈡垚瀛愮被琛ㄧず錛夋椂錛岀敱浜庢病鏈夊姩鎬佺被鍨嬫鏌ワ紝鎵浠ユ槸涓嶅畨鍏ㄧ殑銆?/p>

鈶$敤浜庡熀鏈暟鎹被鍨嬩箣闂寸殑杞崲錛屽鎶奿nt杞崲鎴恈har錛屾妸int杞崲鎴恊num銆傝繖縐嶈漿鎹㈢殑瀹夊叏鎬т篃瑕佸紑鍙戜漢鍛樻潵淇濊瘉銆?/p>

鈶㈡妸絀烘寚閽堣漿鎹㈡垚鐩爣綾誨瀷鐨勭┖鎸囬拡銆?/p>

鈶f妸浠諱綍綾誨瀷鐨勮〃杈懼紡杞崲鎴恦oid綾誨瀷銆?/p>

娉ㄦ剰錛歴tatic_cast涓嶈兘杞崲鎺塭xpression鐨刢onst銆乿olitale銆佹垨鑰卂_unaligned灞炴с?/p>

2 dynamic_cast

鐢ㄦ硶錛歞ynamic_cast < type-id > ( expression )

璇ヨ繍綆楃鎶奺xpression杞崲鎴恡ype-id綾誨瀷鐨勫璞°俆ype-id蹇呴』鏄被鐨勬寚閽堛佺被鐨勫紩鐢ㄦ垨鑰卾oid *錛?/p>

濡傛灉type-id鏄被鎸囬拡綾誨瀷錛岄偅涔坋xpression涔熷繀欏繪槸涓涓寚閽堬紝濡傛灉type-id鏄竴涓紩鐢紝閭d箞expression涔熷繀欏繪槸涓涓紩鐢ㄣ?/p>

dynamic_cast涓昏鐢ㄤ簬綾誨眰嬈¢棿鐨勪笂琛岃漿鎹㈠拰涓嬭杞崲錛岃繕鍙互鐢ㄤ簬綾諱箣闂寸殑浜ゅ弶杞崲銆?/p>

鍦ㄧ被灞傛闂磋繘琛屼笂琛岃漿鎹㈡椂錛宒ynamic_cast鍜宻tatic_cast鐨勬晥鏋滄槸涓鏍風殑錛?/p>

鍦ㄨ繘琛屼笅琛岃漿鎹㈡椂錛宒ynamic_cast鍏鋒湁綾誨瀷媯鏌ョ殑鍔熻兘錛屾瘮static_cast鏇村畨鍏ㄣ?/p>

class B{

public:

聽聽聽聽聽聽 int m_iNum;

聽聽聽聽聽聽 virtual void foo();

};

class D:public B{

聽聽聽 public:

聽聽聽聽聽聽 char *m_szName[100];

};

void func(B *pb){

聽聽聽 D *pd1 = static_cast<D *>(pb);

聽聽聽 D *pd2 = dynamic_cast<D *>(pb);

}

鍦ㄤ笂闈㈢殑浠g爜孌典腑錛屽鏋減b鎸囧悜涓涓狣綾誨瀷鐨勫璞★紝pd1鍜宲d2鏄竴鏍風殑錛屽茍涓斿榪欎袱涓寚閽堟墽琛孌綾誨瀷鐨勪換浣曟搷浣滈兘鏄畨鍏ㄧ殑錛?/p>

浣嗘槸錛屽鏋減b鎸囧悜鐨勬槸涓涓狟綾誨瀷鐨勫璞★紝閭d箞pd1灝嗘槸涓涓寚鍚戣瀵硅薄鐨勬寚閽堬紝瀵瑰畠榪涜D綾誨瀷鐨勬搷浣滃皢鏄笉瀹夊叏鐨勶紙濡傝闂甿_szName錛夛紝

鑰宲d2灝嗘槸涓涓┖鎸囬拡銆?/p>

鍙﹀瑕佹敞鎰忥細B瑕佹湁铏氬嚱鏁幫紝鍚﹀垯浼氱紪璇戝嚭閿欙紱static_cast鍒欐病鏈夎繖涓檺鍒躲?/p>

榪欐槸鐢變簬榪愯鏃剁被鍨嬫鏌ラ渶瑕佽繍琛屾椂綾誨瀷淇℃伅錛岃岃繖涓俊鎭瓨鍌ㄥ湪綾葷殑铏氬嚱鏁拌〃錛?/p>

鍏充簬铏氬嚱鏁拌〃鐨勬蹇碉紝璇︾粏鍙<Inside c++ object model>錛変腑錛屽彧鏈夊畾涔変簡铏氬嚱鏁扮殑綾繪墠鏈夎櫄鍑芥暟琛紝

娌℃湁瀹氫箟铏氬嚱鏁扮殑綾繪槸娌℃湁铏氬嚱鏁拌〃鐨勩?/p>

鍙﹀錛宒ynamic_cast榪樻敮鎸佷氦鍙夎漿鎹紙cross cast錛夈傚涓嬩唬鐮佹墍紺恒?/p>

class A{

public:

聽聽聽聽聽聽聽 int m_iNum;

聽聽聽聽聽聽聽 virtual void f(){}

};

class B:public A{

};

class D:public A{

};

void foo(){

聽聽聽 B *pb = new B;

聽聽聽 pb->m_iNum = 100;

聽聽聽 D *pd1 = static_cast<D *>(pb);聽聽聽 //compile error

聽聽聽 D *pd2 = dynamic_cast<D *>(pb); //pd2 is NULL

聽聽聽 delete pb;

}

鍦ㄥ嚱鏁癴oo涓紝浣跨敤static_cast榪涜杞崲鏄笉琚厑璁哥殑錛屽皢鍦ㄧ紪璇戞椂鍑洪敊錛涜屼嬌鐢?dynamic_cast鐨勮漿鎹㈠垯鏄厑璁哥殑錛岀粨鏋滄槸絀烘寚閽堛?/p>

3 reinterpret_cast

鐢ㄦ硶錛歳einterpret_cast<type-id> (expression)

type-id蹇呴』鏄竴涓寚閽堛佸紩鐢ㄣ佺畻鏈被鍨嬨佸嚱鏁版寚閽堟垨鑰呮垚鍛樻寚閽堛?/p>

瀹冨彲浠ユ妸涓涓寚閽堣漿鎹㈡垚涓涓暣鏁幫紝涔熷彲浠ユ妸涓涓暣鏁拌漿鎹㈡垚涓涓寚閽堬紙鍏堟妸涓涓寚閽堣漿鎹㈡垚涓涓暣鏁幫紝

鍦ㄦ妸璇ユ暣鏁拌漿鎹㈡垚鍘熺被鍨嬬殑鎸囬拡錛岃繕鍙互寰楀埌鍘熷厛鐨勬寚閽堝鹼級銆?/p>

璇ヨ繍綆楃鐨勭敤娉曟瘮杈冨銆?/p>

(static_cast .涓? reinterpret_cast姣旇緝錛岃涓嬮潰 )

4 const_cast

鐢ㄦ硶錛歝onst_cast<type_id> (expression)

璇ヨ繍綆楃鐢ㄦ潵淇敼綾誨瀷鐨刢onst鎴杤olatile灞炴с傞櫎浜哻onst 鎴杤olatile淇グ涔嬪錛?type_id鍜宔xpression鐨勭被鍨嬫槸涓鏍風殑銆?/p>

甯擱噺鎸囬拡琚漿鍖栨垚闈炲父閲忔寚閽堬紝騫朵笖浠嶇劧鎸囧悜鍘熸潵鐨勫璞★紱

甯擱噺寮曠敤琚漿鎹㈡垚闈炲父閲忓紩鐢紝騫朵笖浠嶇劧鎸囧悜鍘熸潵鐨勫璞★紱甯擱噺瀵硅薄琚漿鎹㈡垚闈炲父閲忓璞°?/p>

Voiatile鍜宑onst綾昏瘯銆備婦濡備笅涓渚嬶細

class B{

public:

聽聽聽聽 int m_iNum;

}

void foo(){

const B b1;

b1.m_iNum = 100;聽聽聽聽聽聽聽聽聽聽聽 //comile error

B b2 = const_cast<B>(b1);

b2. m_iNum = 200;聽聽聽聽聽聽聽聽聽聽 //fine

}

涓婇潰鐨勪唬鐮佺紪璇戞椂浼氭姤閿欙紝鍥犱負b1鏄竴涓父閲忓璞★紝涓嶈兘瀵瑰畠榪涜鏀瑰彉錛?/p>

浣跨敤const_cast鎶婂畠杞崲鎴愪竴涓父閲忓璞★紝灝卞彲浠ュ瀹冪殑鏁版嵁鎴愬憳浠繪剰鏀瑰彉銆傛敞鎰忥細b1鍜宐2鏄袱涓笉鍚岀殑瀵硅薄銆?/p>

== ===========================================

== dynamic_cast .vs. static_cast

== ===========================================

class B { ... };

class D : public B { ... };

void f(B* pb)

{

D* pd1 = dynamic_cast<D*>(pb);

D* pd2 = static_cast<D*>(pb);

}

If pb really points to an object of type D, then pd1 and pd2 will get the same value. They will also get the same value if pb == 0.

If pb points to an object of type B and not to the complete D class, then dynamic_cast will know enough to return zero. However, static_cast relies on the programmer鈥檚 assertion that pb points to an object of type D and simply returns a pointer to that supposed D object.

鍗砫ynamic_cast鍙敤浜庣戶鎵夸綋緋諱腑鐨勫悜涓嬭漿鍨嬶紝鍗沖皢鍩虹被鎸囬拡杞崲涓烘淳鐢熺被鎸囬拡錛屾瘮static_cast鏇翠弗鏍兼洿瀹夊叏銆俤ynamic_cast鍦ㄦ墽琛屾晥鐜囦笂姣攕tatic_cast瑕佸樊涓浜涳紝浣唖tatic_cast鍦ㄦ洿瀹戒笂鑼冨洿鍐呭彲浠ュ畬鎴愭槧灝勶紝榪欑涓嶅姞闄愬埗鐨勬槧灝勪即闅忕潃涓嶅畨鍏ㄦс俿tatic_cast瑕嗙洊鐨勫彉鎹㈢被鍨嬮櫎綾誨眰嬈$殑闈欐佸鑸互澶栵紝榪樺寘鎷棤鏄犲皠鍙樻崲銆佺獎鍖栧彉鎹?榪欑鍙樻崲浼氬鑷村璞″垏鐗?涓㈠け淇℃伅)銆佺敤VOID*鐨勫己鍒跺彉鎹€侀殣寮忕被鍨嬪彉鎹㈢瓑...

== ===========================================

== static_cast .vs. reinterpret_cast

== ================================================

reinterpret_cast鏄負浜嗘槧灝勫埌涓涓畬鍏ㄤ笉鍚岀被鍨嬬殑鎰忔濓紝榪欎釜鍏抽敭璇嶅湪鎴戜滑闇瑕佹妸綾誨瀷鏄犲皠鍥炲師鏈夌被鍨嬫椂鐢ㄥ埌瀹冦傛垜浠槧灝勫埌鐨勭被鍨嬩粎浠呮槸涓轟簡鏁呭紕鐜勮櫄鍜屽叾浠栫洰鐨勶紝榪欐槸鎵鏈夋槧灝勪腑鏈鍗遍櫓鐨勩?榪欏彞璇濇槸C++緙栫▼鎬濇兂涓殑鍘熻瘽)

static_cast 鍜?reinterpret_cast 鎿嶄綔絎︿慨鏀逛簡鎿嶄綔鏁扮被鍨嬨傚畠浠笉鏄簰閫嗙殑錛?static_cast 鍦ㄧ紪璇戞椂浣跨敤綾誨瀷淇℃伅鎵ц杞崲錛屽湪杞崲鎵ц蹇呰鐨勬嫻?璇稿鎸囬拡瓚婄晫璁$畻, 綾誨瀷媯鏌?. 鍏舵搷浣滄暟鐩稿鏄畨鍏ㄧ殑銆傚彟涓鏂歸潰錛況einterpret_cast 浠呬粎鏄噸鏂拌В閲婁簡緇欏嚭鐨勫璞$殑姣旂壒妯″瀷鑰屾病鏈夎繘琛屼簩榪涘埗杞崲錛?渚嬪瓙濡備笅錛?/p>

int n=9; double d=static_cast < double > (n);

涓婇潰鐨勪緥瀛愪腑, 鎴戜滑灝嗕竴涓彉閲忎粠 int 杞崲鍒?double銆?榪欎簺綾誨瀷鐨勪簩榪涘埗琛ㄨ揪寮忔槸涓嶅悓鐨勩?瑕佸皢鏁存暟 9 杞崲鍒?鍙岀簿搴︽暣鏁?9錛宻tatic_cast 闇瑕佹紜湴涓哄弻綺懼害鏁存暟 d 琛ヨ凍姣旂壒浣嶃傚叾緇撴灉涓?9.0銆傝宺einterpret_cast 鐨勮涓哄嵈涓嶅悓:

int n=9;

double d=reinterpret_cast<double & > (n);

榪欐, 緇撴灉鏈夋墍涓嶅悓. 鍦ㄨ繘琛岃綆椾互鍚? d 鍖呭惈鏃犵敤鍊? 榪欐槸鍥犱負 reinterpret_cast 浠呬粎鏄鍒?n 鐨勬瘮鐗逛綅鍒?d, 娌℃湁榪涜蹇呰鐨勫垎鏋?

鍥犳, 浣犻渶瑕佽皚鎱庝嬌鐢?reinterpret_cast.



闃肯 2010-11-30 15:37 鍙戣〃璇勮
]]>
鎴愰兘鍦伴搧瑙勫垝[鍥綸http://m.shnenglu.com/lapcca/archive/2010/11/30/135061.html闃肯闃肯Tue, 30 Nov 2010 03:33:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/11/30/135061.htmlhttp://m.shnenglu.com/lapcca/comments/135061.htmlhttp://m.shnenglu.com/lapcca/archive/2010/11/30/135061.html#Feedback2http://m.shnenglu.com/lapcca/comments/commentRss/135061.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/135061.html

闃肯 2010-11-30 11:33 鍙戣〃璇勮
]]>
linux makefile緙栧啓http://m.shnenglu.com/lapcca/archive/2010/11/26/134714.html闃肯闃肯Fri, 26 Nov 2010 03:39:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/11/26/134714.html涓銆丮akefile鐨勮鍒?br />
鍦ㄨ榪拌繖涓狹akefile涔嬪墠錛岃繕鏄鎴戜滑鍏堟潵綺楃暐鍦扮湅涓鐪婱akefile鐨勮鍒欍?br />
target ... : prerequisites ...

command

...

...

target涔熷氨鏄竴涓洰鏍囨枃浠訛紝鍙互鏄疧bject File錛屼篃鍙互鏄墽琛屾枃浠躲?br />
prerequisites灝辨槸錛岃鐢熸垚閭d釜target鎵闇瑕佺殑鏂囦歡鎴栨槸鐩爣銆?br />
command涔熷氨鏄痬ake闇瑕佹墽琛岀殑鍛戒護銆傦紙浠繪剰鐨凷hell鍛戒護錛?br />
榪欐槸涓涓枃浠剁殑渚濊禆鍏崇郴錛屼篃灝辨槸璇達紝target榪欎竴涓垨澶氫釜鐨勭洰鏍囨枃浠朵緷璧栦簬prerequisites涓殑鏂囦歡錛屽叾鐢熸垚瑙勫垯瀹氫箟鍦?command涓傝鐧戒竴鐐瑰氨鏄錛宲rerequisites涓鏋滄湁

涓涓互涓婄殑鏂囦歡姣攖arget鏂囦歡瑕佹柊鐨勮瘽錛宑ommand鎵瀹氫箟鐨勫懡浠ゅ氨浼氳鎵ц銆傝繖灝辨槸Makefile鐨勮鍒欍備篃灝辨槸Makefile涓渶鏍稿績鐨勫唴瀹廣?br />
浜屻佷竴涓ず渚?br />
姝e鍓嶉潰鎵璇寸殑錛屽鏋滀竴涓伐紼嬫湁3涓ご鏂囦歡錛屽拰8涓狢鏂囦歡錛屾垜浠負浜嗗畬鎴愬墠闈㈡墍榪扮殑閭d笁涓鍒欙紝鎴戜滑鐨凪akefile搴旇鏄笅闈㈢殑榪欎釜鏍峰瓙鐨勩?br />
edit : main.o kbd.o command.o display.o \

insert.o search.o files.o utils.o

聽 聽 聽 聽 gcc -o edit main.o kbd.o command.o display.o \

insert.o search.o files.o utils.o


main.o : main.c defs.h

聽 聽 聽 聽 gcc -c main.c

kbd.o : kbd.c defs.h command.h

聽 聽 聽 聽 gcc -c kbd.c

command.o : command.c defs.h command.h

聽 聽 聽 聽 gcc -c command.c

display.o : display.c defs.h buffer.h

聽 聽 聽 聽 gcc -c display.c

insert.o : insert.c defs.h buffer.h

聽 聽 聽 聽 gcc -c insert.c

search.o : search.c defs.h buffer.h

聽 聽 聽 聽 gcc -c search.c

files.o : files.c defs.h buffer.h command.h

聽 聽 聽 聽 gcc -c files.c

utils.o : utils.c defs.h

聽 聽 聽 聽 gcc -c utils.c

clean :

聽 聽 聽 聽 rm edit main.o kbd.o command.o display.o insert.o search.o files.o utils.o

鍙嶆枩鏉狅紙\錛夋槸鎹㈣絎︾殑鎰忔濄傝繖鏍鋒瘮杈冧究浜嶮akefile鐨勬槗璇匯傛垜浠彲浠ユ妸榪欎釜鍐呭淇濆瓨鍦ㄦ枃浠朵負鈥淢akefile鈥濇垨鈥渕akefile鈥濈殑鏂囦歡涓紝鐒跺悗鍦ㄨ鐩綍涓嬬洿鎺ヨ緭鍏ュ懡浠も渕ake鈥濆氨

鍙互鐢熸垚鎵ц鏂囦歡edit銆傚鏋滆鍒犻櫎鎵ц鏂囦歡鍜屾墍鏈夌殑涓棿鐩爣鏂囦歡錛岄偅涔堬紝鍙綆鍗曞湴鎵ц涓涓?鈥渕ake clean鈥濆氨鍙互浜嗐?br />

鍦ㄨ繖涓猰akefile涓紝鐩爣鏂囦歡錛坱arget錛夊寘鍚細鎵ц鏂囦歡edit鍜屼腑闂寸洰鏍囨枃浠訛紙*.o錛夛紝渚濊禆鏂囦歡錛坧rerequisites錛夊氨鏄啋鍙峰悗闈㈢殑閭d簺 .c 鏂囦歡鍜?.h鏂囦歡銆傛瘡涓涓?.o 鏂囦歡閮芥湁

涓緇勪緷璧栨枃浠訛紝鑰岃繖浜?.o 鏂囦歡鍙堟槸鎵ц鏂囦歡 edit 鐨勪緷璧栨枃浠躲備緷璧栧叧緋葷殑瀹炶川涓婂氨鏄鏄庝簡鐩爣鏂囦歡鏄敱鍝簺鏂囦歡鐢熸垚鐨勶紝鎹㈣█涔嬶紝鐩爣鏂囦歡鏄摢浜涙枃浠舵洿鏂扮殑銆?br />

鍦ㄥ畾涔夊ソ渚濊禆鍏崇郴鍚庯紝鍚庣畫鐨勯偅涓琛屽畾涔変簡濡備綍鐢熸垚鐩爣鏂囦歡鐨勬搷浣滅郴緇熷懡浠わ紝涓瀹氳浠ヤ竴涓猅ab閿綔涓哄紑澶淬傝浣忥紝make騫朵笉綆″懡浠ゆ槸鎬庝箞宸ヤ綔鐨勶紝浠栧彧綆℃墽琛屾墍瀹氫箟鐨勫懡浠ゃ?br />
make浼氭瘮杈僼argets鏂囦歡鍜宲rerequisites鏂囦歡鐨勪慨鏀規棩鏈燂紝濡傛灉prerequisites鏂囦歡鐨勬棩鏈熻姣?targets鏂囦歡鐨勬棩鏈熻鏂幫紝鎴栬卼arget涓嶅瓨鍦ㄧ殑璇濓紝閭d箞錛宮ake灝變細鎵ц鍚庣畫瀹氫箟鐨?br />
鍛戒護銆?br />

榪欓噷瑕佽鏄庝竴鐐圭殑鏄紝clean涓嶆槸涓涓枃浠訛紝瀹冨彧涓嶈繃鏄竴涓姩浣滃悕瀛楋紝鏈夌偣鍍廋璇█涓殑lable涓鏍鳳紝鍏跺啋鍙峰悗浠涔堜篃娌℃湁錛岄偅涔堬紝make灝變笉浼氳嚜鍔ㄥ幓鎵炬枃浠剁殑渚濊禆鎬э紝涔熷氨涓嶄細鑷?br />
鍔ㄦ墽琛屽叾鍚庢墍瀹氫箟鐨勫懡浠ゃ傝鎵ц鍏跺悗鐨勫懡浠わ紝灝辮鍦╩ake鍛戒護鍚庢槑鏄懼緱鎸囧嚭榪欎釜lable鐨勫悕瀛椼傝繖鏍風殑鏂規硶闈炲父鏈夌敤錛屾垜浠彲浠ュ湪涓涓猰akefile涓畾涔変笉鐢ㄧ殑緙栬瘧鎴栨槸鍜岀紪璇戞棤鍏?br />
鐨勫懡浠わ紝姣斿紼嬪簭鐨勬墦鍖咃紝紼嬪簭鐨勫浠斤紝絳夌瓑銆?br />

涓夈乵ake鏄浣曞伐浣滅殑


鍦ㄩ粯璁ょ殑鏂瑰紡涓嬶紝涔熷氨鏄垜浠彧杈撳叆make鍛戒護銆傞偅涔堬紝


1銆乵ake浼氬湪褰撳墠鐩綍涓嬫壘鍚嶅瓧鍙淢akefile鈥濇垨鈥渕akefile鈥濈殑鏂囦歡銆?br />
2銆佸鏋滄壘鍒幫紝瀹冧細鎵炬枃浠朵腑鐨勭涓涓洰鏍囨枃浠訛紙target錛夛紝鍦ㄤ笂闈㈢殑渚嬪瓙涓紝浠栦細鎵懼埌鈥渆dit鈥濊繖涓枃浠訛紝騫舵妸榪欎釜鏂囦歡浣滀負鏈緇堢殑鐩爣鏂囦歡銆?br />
3銆佸鏋渆dit鏂囦歡涓嶅瓨鍦紝鎴栨槸edit鎵渚濊禆鐨勫悗闈㈢殑 .o 鏂囦歡鐨勬枃浠朵慨鏀規椂闂磋姣攅dit榪欎釜鏂囦歡鏂幫紝閭d箞錛屼粬灝變細鎵ц鍚庨潰鎵瀹氫箟鐨勫懡浠ゆ潵鐢熸垚edit榪欎釜鏂囦歡銆?br />
4銆佸鏋渆dit鎵渚濊禆鐨?o鏂囦歡涔熶笉瀛樺湪錛岄偅涔坢ake浼氬湪褰撳墠鏂囦歡涓壘鐩爣涓?o鏂囦歡鐨勪緷璧栨э紝濡傛灉鎵懼埌鍒欏啀鏍規嵁閭d竴涓鍒欑敓鎴?o鏂囦歡銆?br />
5銆佸綋鐒訛紝浣犵殑C鏂囦歡鍜孒鏂囦歡鏄瓨鍦ㄧ殑鍟︼紝浜庢槸make浼氱敓鎴?.o 鏂囦歡錛岀劧鍚庡啀鐢?.o 鏂囦歡鐢熷懡make鐨勭粓鏋佷換鍔★紝涔熷氨鏄墽琛屾枃浠秂dit浜嗐?br />

榪欏氨鏄暣涓猰ake鐨勪緷璧栨э紝make浼氫竴灞傚張涓灞傚湴鍘繪壘鏂囦歡鐨勪緷璧栧叧緋伙紝鐩村埌鏈緇堢紪璇戝嚭絎竴涓洰鏍囨枃浠躲傚湪鎵懼鐨勮繃紼嬩腑錛屽鏋滃嚭鐜伴敊璇紝姣斿鏈鍚庤渚濊禆鐨勬枃浠舵壘涓嶅埌錛岄偅涔?br />
make灝變細鐩存帴閫鍑猴紝騫舵姤閿欙紝鑰屽浜庢墍瀹氫箟鐨勫懡浠ょ殑閿欒錛屾垨鏄紪璇戜笉鎴愬姛錛宮ake鏍規湰涓嶇悊銆俶ake鍙鏂囦歡鐨勪緷璧栨э紝鍗籌紝濡傛灉鍦ㄦ垜鎵句簡渚濊禆鍏崇郴涔嬪悗錛屽啋鍙峰悗闈㈢殑鏂囦歡榪樻槸涓嶅湪

錛岄偅涔堝涓嶈搗錛屾垜灝變笉宸ヤ綔鍟︺?br />

閫氳繃涓婅堪鍒嗘瀽錛屾垜浠煡閬擄紝鍍廲lean榪欑錛屾病鏈夎絎竴涓洰鏍囨枃浠剁洿鎺ユ垨闂存帴鍏寵仈錛岄偅涔堝畠鍚庨潰鎵瀹氫箟鐨勫懡浠ゅ皢涓嶄細琚嚜鍔ㄦ墽琛岋紝涓嶈繃錛屾垜浠彲浠ユ樉紺鴻 make鎵ц銆傚嵆鍛戒護鈥斺?br />
鈥渕ake clean鈥濓紝浠ユ鏉ユ竻闄ゆ墍鏈夌殑鐩爣鏂囦歡錛屼互渚塊噸緙栬瘧銆?br />

浜庢槸鍦ㄦ垜浠紪紼嬩腑錛屽鏋滆繖涓伐紼嬪凡琚紪璇戣繃浜嗭紝褰撴垜浠慨鏀逛簡鍏朵腑涓涓簮鏂囦歡錛屾瘮濡俧ile.c錛岄偅涔堟牴鎹垜浠殑渚濊禆鎬э紝鎴戜滑鐨勭洰鏍噁ile.o浼氳閲嶇紪璇戯紙涔熷氨鏄湪榪欎釜渚濇у叧緋誨悗

闈㈡墍瀹氫箟鐨勫懡浠わ級錛屼簬鏄痜ile.o鐨勬枃浠朵篃鏄渶鏂扮殑鍟︼紝浜庢槸file.o鐨勬枃浠朵慨鏀規椂闂磋姣攅dit瑕佹柊錛屾墍浠dit 涔熶細琚噸鏂伴摼鎺ヤ簡銆?br />

鑰屽鏋滄垜浠敼鍙樹簡鈥渃ommand.h鈥濓紝閭d箞錛宬db.o銆乧ommand.o鍜宖iles.o閮戒細琚噸緙栬瘧錛屽茍涓旓紝edit浼氳閲嶉摼鎺ャ?br />

鍥涖乵akefile涓嬌鐢ㄥ彉閲?br />

鍦ㄤ笂闈㈢殑渚嬪瓙涓紝鍏堣鎴戜滑鐪嬬湅edit鐨勮鍒欙細


edit : main.o kbd.o command.o display.o insert.o search.o files.o utils.o

聽 聽 聽 聽 gcc -o edit main.o kbd.o command.o display.o insert.o search.o files.o utils.o

鎴戜滑鍙互鐪嬪埌[.o]鏂囦歡鐨勫瓧絎︿覆琚噸澶嶄簡涓ゆ錛屽鏋滄垜浠殑宸ョ▼闇瑕佸姞鍏ヤ竴涓柊鐨刐.o]鏂囦歡錛岄偅涔堟垜浠渶瑕佸湪涓や釜鍦版柟鍔狅紙搴旇鏄笁涓湴鏂癸紝榪樻湁涓涓湴鏂瑰湪clean涓級銆傚綋鐒訛紝鎴?br />
浠殑makefile騫朵笉澶嶆潅錛屾墍浠ュ湪涓や釜鍦版柟鍔犱篃涓嶇瘡錛屼絾濡傛灉makefile鍙樺緱澶嶆潅錛岄偅涔堟垜浠氨鏈夊彲鑳戒細蹇樻帀涓涓渶瑕佸姞鍏ョ殑鍦版柟錛岃屽鑷寸紪璇戝け璐ャ傛墍浠ワ紝涓轟簡makefile鐨勬槗緇存姢錛?br />
鍦╩akefile涓垜浠彲浠ヤ嬌鐢ㄥ彉閲忋俶akefile鐨勫彉閲忎篃灝辨槸涓涓瓧絎︿覆錛岀悊瑙f垚C璇█涓殑瀹忓彲鑳戒細鏇村ソ銆?br />
姣斿錛屾垜浠0鏄庝竴涓彉閲忥紝鍙玱bjects, OBJECTS, objs, OBJS, obj, 鎴栨槸 OBJ錛屽弽姝d笉綆′粈涔堝暒錛屽彧瑕佽兘澶熻〃紺簅bj鏂囦歡灝辮浜嗐傛垜浠湪makefile涓寮濮嬪氨榪欐牱瀹氫箟錛?br />
objects = main.o kbd.o command.o display.o \

insert.o search.o files.o utils.o


浜庢槸錛屾垜浠氨鍙互寰堟柟渚垮湴鍦ㄦ垜浠殑makefile涓互鈥?(objects)鈥濈殑鏂瑰紡鏉ヤ嬌鐢ㄨ繖涓彉閲忎簡錛屼簬鏄垜浠殑鏀硅壇鐗坢akefile灝卞彉鎴愪笅闈㈣繖涓牱瀛愶細


objects = main.o kbd.o command.o display.o \

insert.o search.o files.o utils.o

edit : $(objects)

聽 聽 聽 聽 gcc -o edit $(objects)

main.o : main.c defs.h

聽 聽 聽 聽 gcc -c main.c

kbd.o : kbd.c defs.h command.h

聽 聽 聽 聽 gcc -c kbd.c

command.o : command.c defs.h command.h

聽 聽 聽 聽 gcc -c command.c

display.o : display.c defs.h buffer.h

聽 聽 聽 聽 gcc -c display.c

insert.o : insert.c defs.h buffer.h

聽 聽 聽 聽 gcc -c insert.c

search.o : search.c defs.h buffer.h

聽 聽 聽 聽 gcc -c search.c

files.o : files.c defs.h buffer.h command.h

聽 聽 聽 聽 gcc -c files.c

utils.o : utils.c defs.h

聽 聽 聽 聽 gcc -c utils.c

clean :

聽 聽 聽 聽 rm edit $(objects)





浜庢槸濡傛灉鏈夋柊鐨?.o 鏂囦歡鍔犲叆錛屾垜浠彧闇綆鍗曞湴淇敼涓涓?objects 鍙橀噺灝卞彲浠ヤ簡銆?br />

浜斻佽make鑷姩鎺ㄥ



GNU鐨刴ake寰堝己澶э紝瀹冨彲浠ヨ嚜鍔ㄦ帹瀵兼枃浠朵互鍙婃枃浠朵緷璧栧叧緋誨悗闈㈢殑鍛戒護錛屼簬鏄垜浠氨娌″繀瑕佸幓鍦ㄦ瘡涓涓猍.o]鏂囦歡鍚庨兘鍐欎笂綾諱技鐨勫懡浠わ紝鍥犱負錛屾垜浠殑make浼氳嚜鍔ㄨ瘑鍒紝騫惰嚜宸辨帹瀵煎懡

浠ゃ?br />


鍙make鐪嬪埌涓涓猍.o]鏂囦歡錛屽畠灝變細鑷姩鐨勬妸[.c]鏂囦歡鍔犲湪渚濊禆鍏崇郴涓紝濡傛灉make鎵懼埌涓涓獁hatever.o錛岄偅涔?whatever.c錛屽氨浼氭槸whatever.o鐨勪緷璧栨枃浠躲傚茍涓?cc -c

whatever.c 涔熶細琚帹瀵煎嚭鏉ワ紝浜庢槸錛屾垜浠殑makefile鍐嶄篃涓嶇敤鍐欏緱榪欎箞澶嶆潅銆傞偅涔堟柊鐨刴akefile灝嗗彉涓恒?br />
objects = main.o kbd.o command.o display.o \

insert.o search.o files.o utils.o



edit : $(objects)

cc -o edit $(objects)

main.o : defs.h

kbd.o : defs.h command.h

command.o : defs.h command.h

display.o : defs.h buffer.h

insert.o : defs.h buffer.h

search.o : defs.h buffer.h

files.o : defs.h buffer.h command.h

utils.o : defs.h

clean :
聽 聽 聽 聽 rm edit $(objects)



鍏佹竻絀虹洰鏍囨枃浠剁殑瑙勫垯



姣忎釜Makefile涓兘搴旇鍐欎竴涓竻絀虹洰鏍囨枃浠訛紙.o鍜屾墽琛屾枃浠訛級鐨勮鍒欙紝榪欎笉浠呬究浜庨噸緙栬瘧錛屼篃寰堝埄浜庝繚鎸佹枃浠剁殑娓呮磥銆傚叾椋庢牸濡備笅錛?br />
clean:

聽 聽 聽 聽 rm edit $(objects)


鏇翠負紼沖仴鐨勫仛娉曟槸錛?br />


.PHONY : clean

clean :

-rm edit $(objects)

.PHONY鎰忔濊〃紺篶lean鏄竴涓滀吉鐩爣鈥濓紝銆傝屽湪rm鍛戒護鍓嶉潰鍔犱簡涓涓皬鍑忓彿鐨勬剰鎬濆氨鏄紝涔熻鏌愪簺鏂囦歡鍑虹幇闂錛屼絾涓嶈綆★紝緇х畫鍋氬悗闈㈢殑浜嬨傚綋鐒訛紝clean鐨勮鍒欎笉

瑕佹斁鍦ㄦ枃浠剁殑寮澶達紝涓嶇劧錛岃繖灝變細鍙樻垚make鐨勯粯璁ょ洰鏍囥備笉鎴愭枃鐨勮鐭╂槸鈥斺斺渃lean浠庢潵閮芥槸鏀懼湪鏂囦歡鐨勬渶鍚庘濄?br />
杞嚜:http://bbs.dameng.com/viewthread.php?tid=1506

闃肯 2010-11-26 11:39 鍙戣〃璇勮
]]>
c++ 鏋氫婦緗戦〉http://m.shnenglu.com/lapcca/archive/2010/11/22/134277.html闃肯闃肯Mon, 22 Nov 2010 07:34:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/11/22/134277.htmlhttp://m.shnenglu.com/lapcca/comments/134277.htmlhttp://m.shnenglu.com/lapcca/archive/2010/11/22/134277.html#Feedback1http://m.shnenglu.com/lapcca/comments/commentRss/134277.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/134277.html闃呰鍏ㄦ枃

闃肯 2010-11-22 15:34 鍙戣〃璇勮
]]>
璁捐winsock鏈嶅姟鍣ㄩ渶瑕佹敞鎰忕殑鍑犱釜闂http://m.shnenglu.com/lapcca/archive/2010/11/12/133421.html闃肯闃肯Fri, 12 Nov 2010 06:04:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/11/12/133421.htmlhttp://m.shnenglu.com/lapcca/comments/133421.htmlhttp://m.shnenglu.com/lapcca/archive/2010/11/12/133421.html#Feedback1http://m.shnenglu.com/lapcca/comments/commentRss/133421.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/133421.html6.2.1 鎺ュ彈榪炴帴鐨勬柟娉?

Winsock 鎵╁睍鍑芥暟 AcceptEx 鏄敮涓鑳藉浣跨敤閲嶅彔 I/O 鎺ュ彈瀹㈡埛榪炴帴鐨勫嚱鏁般備笅闈富瑕佹繁鍏ユ帰璁ㄤ嬌鐢ㄨ鍑芥暟鎺ユ敹榪炴帴鐨勯棶棰樸?

鍓嶉潰宸茬粡璁ㄨ榪囷紝褰撳鎴瘋繛鎺ヨ繘鏉ユ椂錛屾湇鍔″櫒闇瑕佸垱寤轟竴涓鎺ュ瓧鏉ヨ礋璐g淮鎶や笌涓涓鎴風鐨勪細璇濄備嬌鐢?AcceptEx 鍑芥暟涔嬪墠蹇呴』鍒涘緩涓浜涘鎺ュ瓧錛屽茍涓旇繖浜涘鎺ュ瓧蹇呴』鏄湭緇戝畾銆佹湭榪炴帴鐨勶紝鍗充嬌瀹冧滑鍙兘鍦ㄨ皟鐢?TransmitFile, TransmitPackets, 鎴?DisconnectEx 鍚庡彲浠ラ噸鐢ㄣ?

鍝嶅簲鏈嶅姟鍣ㄥ繀欏繪繪槸鍏鋒湁瓚沖鐨?AcceptEx 鍦ㄧ珯宀楋紝浠ヤ究鍦ㄦ湁瀹㈡埛榪炴帴璇鋒眰鏃惰皟鐢ㄣ備絾鏄紝騫舵病鏈夊叿浣撶殑鏁伴噺鑳藉淇濊瘉鏈嶅姟鍣ㄨ兘澶熺珛鍗沖搷搴旇繛鎺ャ傛垜浠煡閬撳湪璋冪敤 listen 灝嗙洃鍚鎺ュ瓧緗簬鐩戝惉鐘舵佸悗錛?TCP/IP 鍫嗘爤浼氳嚜鍔ㄦ帴鍙楀埌鏉ョ殑榪炴帴錛岀洿鍒拌揪鍒?listen 鐨?backlog 鍙傛暟璁懼畾鐨勯檺鍒躲傚浜?Windows NT 鏈嶅姟鍣ㄨ岃█錛屾敮鎸佺殑 backlog 鐨勬渶澶у間負 200 銆傚鏋滄湇鍔″櫒鎶曢掍簡 15 涓?AcceptEx 璋冪敤錛岀劧鍚庣獊鐒舵湁 50 涓鎴瘋姹傝繛鎺ユ湇鍔″櫒錛屽畠浠殑榪炴帴璇鋒眰閮戒笉浼氶伃鍒版嫆緇濄傛湇鍔″櫒鎶曢掔殑 AcceptEx I/O 浼氭弧瓚沖墠闈㈢殑 15 涓繛鎺ワ紝鍓╀笅鐨?35 涓繛鎺ラ兘琚郴緇熼粯璁よ繛鎺ヤ簡銆傛鏌ヤ竴涓?backlog 鐨勫煎彂鐜幫紝緋葷粺榪樻湁鑳藉姏榛樿鎺ュ彈 165 涓繛鎺ャ備箣鍚庯紝濡傛灉鏈嶅姟鍣ㄦ姇閫?AcceptEx 璋冪敤錛屽畠浠細绔嬪嵆鎴愬姛榪斿洖錛屽洜涓虹郴緇熶細灝嗛粯璁ゆ帴鏀剁殑榪炴帴鏀懼叆 鈥?絳夊緟榪炴帴闃熷垪 鈥?涓?

鏈嶅姟鍣ㄧ殑鐗規ф槸鍐沖畾瑕佹姇閫掑灝戜釜 AcceptEx 鎿嶄綔鐨勯噸瑕佸洜绱犮備緥濡傦紝甯屾湜澶勭悊澶ч噺鐭椂闂村嵆鏃惰繛鎺ョ殑瀹㈡埛瑕佹瘮澶勭悊灝戦噺闀挎椂闂磋繛鎺ョ殑瀹㈡埛鎶曢掓洿澶氱殑 AcceptEx I/O 銆備竴涓ソ鐨勭瓥鐣ユ槸鍏佽 AcceptEx 鐨勮皟鐢ㄦ暟閲忓湪鏈灝忓煎拰鏈澶у間箣闂村彉鍖栥傚叿浣撳仛娉曟槸錛屽簲鐢ㄧ▼搴忚窡韙湭鍐崇殑 AcceptEx I/O 鐨勬暟閲忥紝褰撲竴涓垨澶氫釜 I/O 瀹屾垚浣胯繖涓湭鍐?I/O 鏁伴噺鍙樺緱姣旀渶灝忓艱繕灝忔椂錛屽氨鍐嶆姇閫掗澶栫殑 AcceptEx I/O 銆?

鍦?Windows 2000 鍜屼互鍚庣殑 Windows 鎿嶄綔緋葷粺鐗堟湰涓紝 Winsock 鎻愪緵浜嗕竴縐嶆満鍒訛紝鐢ㄦ潵紜畾搴旂敤紼嬪簭鏄惁鎶曢掍簡瓚沖鐨?AcceptEx 璋冪敤銆傚垱寤虹洃鍚鎺ュ瓧鏃訛紝浣跨敤 WSAEventSelect 鍑芥暟涓虹洃鍚鎺ュ瓧鍏寵仈涓涓簨浠跺璞★紝娉ㄥ唽 FD_ACCEPT 浜嬩歡銆傚鏋滄姇閫掔殑 AcceptEx 鎿嶄綔鐢ㄥ畬錛屼絾鏄粛鏈夊鎴瘋姹傛帴鍏ワ紙緋葷粺鏍規嵁 backlog 鍊煎喅瀹氭槸鍚︽帴鍙楄繖浜涜繛鎺ワ級錛屼簨浠跺璞″氨鏄彈淇★紝璇存槑搴旇鎶曢掗澶栫殑 AcceptEx 鎿嶄綔浜嗐傝繖瀹為檯涓婅繕鏄埄鐢ㄤ簨浠跺璞℃潵浣胯皟鐢ㄧ嚎紼嬪浜庝竴縐?鈥?鍙鍛婄姸鎬?鈥?錛屽綋鏈夊鎴瘋繛鎺ヨ姹傛椂錛屽氨鏍規嵁褰撳墠 AcceptEx 鎿嶄綔鏄惁鐢ㄥ畬鏉ヨ鍛婏紙閫氱煡錛夋槸鍚﹂渶瑕佹姇閫掓柊鐨?AcceptEx 鎿嶄綔鏉ュ鐞嗘柊鐨勫鎴瘋繛鎺ャ?

浣跨敤 AcceptEx 澶勭悊榪炴帴鐨勫彟澶栦竴涓姛鑳藉氨鏄湪澶勭悊榪炴帴鏃惰繕鍙互鎺ユ敹鐢ㄦ埛鍙戞潵鐨勭涓鍧楁暟鎹紙鍓嶆彁鏄負 AcceptEx 鎻愪緵浜嗘帴鏀剁紦鍐插尯錛夛紝榪欏浜庨偅浜涜姹傝繛鎺ョ殑鍚屾椂鍙戦佷簡涓浜涙暟鎹繃鏉ョ殑瀹㈡埛鏉ヨ寰堥傜敤銆備絾鏄紝姝ゆ椂錛岄櫎闈炴帴鏀惰繛鎺ョ殑鍚屾椂鎺ユ敹鍒頒簡瀹㈡埛鍙戦佽繃鏉ョ殑涓浜涙暟鎹紝鍚﹀垯 AcceptEx 鏄笉浼氳繑鍥炵殑銆?

涓轟簡婊¤凍瀹㈡埛鐨勯渶姹傦紝鏈嶅姟鍣ㄤ笉寰椾笉鎶曢掓洿澶氱殑鎺ュ彈 I/O 錛岃繖浼氬崰鐢ㄥぇ閲忕殑緋葷粺璧勬簮銆傚鏋滃鎴蜂粎璋冪敤 connect 鍑芥暟榪炴帴鏈嶅姟鍣紝闀挎椂闂存棦涓嶅彂閫佹暟鎹紝涔熶笉鍏抽棴榪炴帴錛屽氨鍙兘閫犳垚 AcceptEx 鎶曢掔殑澶ч噺閲嶅彔 I/O 鎿嶄綔涓嶈兘榪斿洖銆傝繖灝辨槸 鈥?鎭舵剰榪炴帴 鈥?銆備負姝わ紝鏈嶅姟鍣ㄥ簲璇ヨ褰曟瘡涓?AcceptEx 鎶曢掔殑鏈喅 I/O, 瀹氭椂鎵弿瀹冧滑錛岃緗?SO_CONNECT_TIME 鍙傛暟璋冪敤 getsockopt 媯鏌ュ畠浠繛鎺ョ殑鏃墮棿錛屽鏋滆秴鏃訛紝灝卞皢榪炴帴鍏抽棴銆傚鏋滀嬌鐢?WSAEventSelect 妯″瀷鏉ラ氱煡鏈夎繛鎺ヤ簨浠訛紝鍒欏綋浜嬩歡鍙椾俊鏃訛紝鏄鏌ュ鎴峰鎺ュ瓧錛?AcceptSocket 錛夋槸鍚︾湡姝h繛鎺ヤ簡銆?

姣忓綋璋冪敤 AcceptEx 鎺ュ彈瀹㈡埛绔繛鎺ユ椂錛屽畠涔熷湪絳夊緟鎺ュ彈瀹㈡埛鍙戦佽繃鏉ョ殑絎竴涓暟鎹潡錛岃繖鏃朵笉鍏佽鎶曢掑彟澶栦竴涓?AcceptEx 銆傚綋 AcceptEx 榪斿洖鍚庯紝濡傛灉浜嬩歡瀵硅薄鍐嶆鍙椾俊鍒欒〃鏄庢湁鏂扮殑榪炴帴鍒版潵銆傞渶瑕佹敞鎰忕殑鏄紝鏃犺浣曟椂錛屽崈涓囦笉瑕佸叧闂竴涓皟鐢?AcceptEx 榪樻病鏈夎繑鍥炵殑濂楁帴瀛楋紙 AcceptSocket 錛夛紝鍥犱負榪欎細瀵艱嚧鍐呭瓨娉勯湶銆傚洜涓轟粠鍐呴儴鎵ц閫昏緫鐪嬶紝褰撴病鏈夎繛鎺ョ殑濂楁帴瀛楀彞鏌勮鍏抽棴鏃訛紝璋冪敤 AcceptEx 鎵娑夊強鍒扮殑鍐呮牳妯″紡鐨勬暟鎹粨鏋勫茍涓嶄細娓呴櫎鎺夛紝鐩村埌鏈夋柊鐨勮繛鎺ュ緩绔嬫垨鑰呯洃鍚鎺ュ瓧琚叧闂?

灝界鍦ㄤ竴涓瓑寰呭畬鎴愰氱煡鐨勫伐浣滆呯嚎紼嬩腑錛屾姇閫掍竴涓?AcceptEx 鎿嶄綔錛岀湅璧鋒潵鏃㈢畝鍗曞張鍚堟儏鍚堢悊錛屼絾鏄簲灝介噺閬垮厤榪欐牱鍋氾紝鍥犱負鍒涘緩濂楁帴瀛楄繕鏄緢鑰楄垂璧勬簮鐨勩傚彟澶栵紝涔熶笉瑕佸湪宸ヤ綔鑰呯嚎紼嬩腑榪涜浠諱綍澶嶆潅鐨勮綆楋紝浠ヤ究澶勭悊鍣ㄥ彲浠ュ敖蹇殑鍦ㄦ帴鍒板畬鎴愰氱煡鍚庤繘琛屽悗緇鐞嗐傚垱寤哄鎺ュ瓧鑰楄垂璧勬簮鐨勪竴涓師鍥犲湪浜?Winsock 2.0 鏈韓鐨勬灦鏋勫緢澶嶆潅錛屾垚鍔熷湴鍒涘緩涓涓鎺ュ瓧鍙兘闇瑕佽皟鐢ㄥ緢澶氬唴鏍告湇鍔°傚洜姝わ紝鏈嶅姟鍣ㄥ簲璇ュ湪鍗曠嫭綰跨▼涓垱寤哄鎺ュ瓧錛屾姇閫?AcceptEx 鎿嶄綔銆傚綋璋冪敤綰跨▼鎶曢掔殑 AcceptEx 閲嶅彔鎿嶄綔瀹屾垚鏃訛紝涓涓彈淇$殑浜嬩歡灝嗕細閫氱煡澶勭悊綰跨▼銆?

6.2.2 鏁版嵁浼犺緭闂

鏁版嵁浼犺緭鏄氫俊紼嬪簭鎵ц鐨勬牳蹇冩搷浣溿傚綋涓涓鎴蜂笌鏈嶅姟鍣ㄥ緩绔嬭繛鎺ュ悗錛屽畠浠殑涓昏宸ヤ綔灝辨槸浼犺緭鏁版嵁錛屽洜涓烘暟鎹槸淇℃伅鐨勮〃紺恒傜敱涓婁竴鑺傚嚑縐?I/O 妯″瀷鐨勬ц兘嫻嬭瘯鍒嗘瀽鍙煡錛屽綋榪炴帴鏁伴噺寰堝ぇ鏃訛紝鏁版嵁鍚炲悙閲忔槸涓涓噸瑕佺殑鎬ц兘鑰冩牳鎸囨爣銆?

浠庢ц兘瑙掑害鑰冭檻錛屾墍鏈夌殑鏁版嵁浼犺緭鏈濂介兘搴旈噰鐢ㄩ噸鍙?I/O 澶勭悊銆傞粯璁ゆ儏鍐典笅錛岀郴緇熶負姣忎釜 socket 鍒嗛厤涓涓殑鎺ュ彈緙撳啿鍖哄拰涓涓彂閫佺紦鍐插尯錛岀敤鏉ョ紦瀛樻帴鏀跺拰鍙戦佺殑鏁版嵁銆備絾鍦ㄩ噸鍙?I/O 涓紝榪欎簺緙撳啿鍖哄線寰涓嶇敤錛屽彲浠ヤ紶閫掑弬鏁?SO_SNDBUF 鎴?SO_RCVBUF 璋冪敤 setsockopt 錛屾潵灝嗗畠浠緗負 0 銆?

璁╂垜浠潵鐪嬬湅錛屽綋鍙戦佺紦鍐插尯娌℃湁璁劇疆涓?0 鏃訛紝緋葷粺鏄庝箞澶勭悊涓涓吀鍨嬬殑 send 鎿嶄綔鐨勩傚綋涓涓簲鐢ㄧ▼搴忚皟鐢?send 鍑芥暟鏃訛紝濡傛灉鏈夊厖瓚崇殑緙撳啿絀洪棿錛岄渶瑕佸彂閫佺殑鏁版嵁灝嗚鎷瘋礉鍒板鎺ュ瓧鐨勫彂閫佺紦鍐插尯錛?send 鍑芥暟绔嬪嵆鎴愬姛榪斿洖錛屽茍涓斾竴涓畬鎴愰氱煡琚姏鍑恒傚彟澶栦竴涓柟闈紝濡傛灉濂楁帴瀛楃殑鍙戦佺紦鍐插尯宸叉弧錛屽垯搴旂敤紼嬪簭鎻愪緵鐨勫彂閫佺紦鍐插尯琚攣瀹氾紝鍐嶆瀵?send 鍑芥暟鐨勮皟鐢ㄥ皢浼氳繑鍥?WSA_IO_PENDING 閿欒銆傚綋鍙戦佺紦鍐插尯涓殑鏁版嵁琚鐞嗭紙渚嬪錛屾彁浜ょ粰浼犺緭灞傚鐞嗭級鏃訛紝 Winsock 瀹為檯涓婄洿鎺ュ鐞嗛攣瀹氬湪緙撳啿鍖轟腑鐨勬暟鎹紝涔熷嵆緇曡繃濂楁帴瀛楃殑鍙戦佺紦鍐插尯錛岀洿鎺ヤ粠搴旂敤紼嬪簭緙撳啿鍖轟腑鎻愪氦鏁版嵁緇欎紶杈撳眰銆?

鎺ユ敹鏁版嵁鐨勬儏鍐墊伆濂界浉鍙嶃傚綋涓涓噸鍙犵殑 receive 璇鋒眰鎶涘嚭鍚庯紝濡傛灉鏁版嵁宸茬粡鎺ユ敹鎴愬姛錛屽畠浼氳緙撳瓨鍦ㄥ鎺ュ瓧鎺ユ敹緙撳啿鍖恒傛暟鎹細鎷瘋礉鍒板簲鐢ㄧ▼搴忕紦鍐插尯錛堢洿鍒伴ケ鍜岋級銆?receive 璋冪敤榪斿洖錛屽茍涓斾竴涓畬鎴愰氱煡琚姏鍑恒傚綋濂楁帴瀛楃紦鍐插尯琚緗負絀烘椂錛屽鏋滆皟鐢ㄩ噸鍙犵殑 receive 鎿嶄綔灝嗚繑鍥?WSA_IO_PENDING 閿欒銆傚綋鏈夋暟鎹埌杈炬椂錛屽畠灝嗙粫榪囧鎺ュ瓧緙撳啿鍖鴻岀洿鎺ヨ鎷瘋礉鍒板簲鐢ㄧ▼搴忕紦鍐插尯銆?

璁劇疆鍗曞鎺ュ瓧緙撳啿鍖轟負 0 錛屽茍涓嶈兘鎻愰珮鎬ц兘錛屽洜涓哄彧瑕佷竴鐩存湁澶ч噺鐨勯噸鍙犳帴鍙戣姹傝鎶涘嚭錛屽氨涓嶄細鏈夐澶栫殑鍐呭瓨鎷瘋礉銆傝緗鎺ュ瓧鍙戦佺紦鍐插尯涓虹┖姣旇緗鎺ュ瓧鎺ユ敹緙撳啿鍖轟負絀哄緋葷粺鐨勬ц兘褰卞搷瑕佸皬銆傚洜涓哄簲鐢ㄧ▼搴忕殑鍙戦佺紦鍐插尯浼氳緇忓父閿佸畾鐩村埌瀹冭鎻愪氦緇欎紶杈撳眰澶勭悊銆傜劧鑰岋紝鑻ュ皢鎺ユ敹緙撳啿鍖鴻緗負 0 錛屽茍涓旀病鏈夐噸鍙犵殑 receive 璋冪敤錛屼換浣曚紶榪涙潵鐨勬暟鎹彧鑳界紦瀛樺湪浼犺緭灞傘備紶杈撳眰椹卞姩紼嬪簭鍙細緙撳瓨婊戝姩紿楀彛灝哄鐨勬暟鎹紝鍗?17KB鈥?浼犺緭灞傚彲浠ュ垎閰嶇殑緙撳啿鍖哄ぇ灝忕殑涓婇檺銆傚疄闄呯殑緙撳啿鍖鴻姣?17KB 灝忋備紶杈撳眰緙撳啿鍖猴紙閽堝涓嬈¤繛鎺ワ級鏄湪闈炲垎欏墊睜涔嬪鍒嗛厤鐨勶紝榪欐剰鍛崇潃錛屽綋鏈嶅姟寤虹珛浜?1000 涓繛鎺ユ椂錛屽嵆浣挎病鏈夋姏鍑?receive 璇鋒眰錛岄潪鍒嗛〉姹犱腑涔熶細鍒嗛厤 17MB 鐨勫唴瀛樸傝岄潪鍒嗛〉姹犳槸寰堢弽璐電殑璧勬簮錛岄櫎闈炴湇鍔″櫒鍙互淇濊瘉鎬繪槸鏈夋帴鏀惰姹傛姏鍑猴紝鍚﹀垯濂楁帴瀛楁帴鏀剁紦鍐插尯搴旇涓嶉渶璁劇疆銆?

鍙湁鍦ㄤ竴浜涚壒孌婃儏鍐典笅錛屽濂楁帴瀛楁帴鏀剁紦鍐插尯涓嶄簣璁劇疆灝嗕細瀵艱嚧鎬ц兘闄嶄綆銆傝冭檻鏈嶅姟鍣ㄩ渶瑕佸鐞嗘垚鍗冧笂涓囦釜瀹㈡埛榪炴帴錛岃屾瘡涓繛鎺ヤ笂鍙堥兘娌℃湁鎶曢?receive 璇鋒眰鐨勬儏鍐碉紝濡傛灉瀹㈡埛绔浂鏄熷湴鍙戦佹暟鎹繃鏉ワ紝浼犺緭榪涙潵鐨勬暟鎹皢琚紦瀛樺湪濂楁帴瀛楁帴鏀剁紦鍐插尯涓傚綋鏈嶅姟鍣ㄥ鐞嗕竴涓?receive 閲嶅彔 I/O 鏃訛紝瀹冧細鍋氫竴浜涗笉蹇呰鐨勫伐浣溿傚綋瀹屾垚閫氱煡鍒拌揪鏃訛紝閲嶅彔鎿嶄綔浼氬鐞嗕竴涓?I/O 璇鋒眰鍖咃紙 IRP 錛夈傚湪榪欑鎯呭艦涓嬶紝鏈嶅姟鍣ㄤ笉鑳戒繚鐣欏緢澶氭姏鍑虹殑 receive 璇鋒眰銆傚洜姝わ紝鏈濂戒嬌鐢ㄧ畝鍗曠殑闈為樆濉炴帴鏀跺嚱鏁般?

6.3 鍐呭瓨璧勬簮綆$悊闂

鐢變簬鏈哄櫒紜歡鏉′歡鎵闄愶紝緋葷粺璧勬簮鏄湁闄愮殑錛屽洜姝や笉寰椾笉鑰冭檻鍐呭瓨璧勬簮鐨勭鐞嗛棶棰樸備粠涓婁竴鑺傚涓嶅悓 I/O 妯″瀷榪涜鐨勬ц兘嫻嬭瘯緇撴灉鍒嗘瀽鍙煡錛岀淮鎸佸ぇ瑙勬ā鐨勯氫俊榪炴帴錛屼笉浠呬細鑰楄垂鎺夊ぇ閲忓唴瀛橈紝鑰屼笖瀵?CPU 鐨勫崰鐢ㄤ篃鏄緢楂樼殑銆?

瀵逛簬閰嶇疆姣旇緝楂樼殑鏈嶅姟鍣ㄨ岃█錛屽鐞嗘垚鍗冧笂涓囦釜榪炴帴騫朵笉鎴愰棶棰樸備絾鏄殢鐫榪炴帴閲忕殑鍓у錛屽唴瀛樿祫婧愮殑闄愬埗灝嗛愭笎鍑哥幇銆傛渶鏈夊彲鑳介亣鍒扮殑涓や釜闄愬埗鍥犵礌灝辨槸閿佸畾欏靛拰闈炲垎欏墊睜銆傞攣瀹氶〉鐨勯檺鍒朵笉鏄お涓ラ噸錛屾洿搴旇閬垮厤鐨勬槸闈炲垎欏墊睜琚楀敖銆傛瘡涓嬈¤皟鐢ㄩ噸鍙犵殑 send 鎴?receive 璇鋒眰錛屾彁浜ょ殑緙撳啿鍖洪兘鍙兘琚攣浣忋傚綋鍐呭瓨琚攣瀹氭椂錛屽畠灝變笉鑳戒粠鐗╃悊鍐呭瓨鎹㈠嚭銆傛搷浣滅郴緇熷閿佸畾鍐呭瓨鐨勬暟閲忔槸鏈夐檺鍒剁殑錛屽綋杈懼埌鏋侀檺鏃訛紝閲嶅彔鎿嶄綔灝嗕細榪斿洖 WSAENOBUFS 閿欒銆傚鏋滄湇鍔″櫒鍦ㄦ瘡涓繛鎺ヤ笂鎶曢掑涓噸鍙犳帴鏀舵搷浣滐紝闅忕潃瀹㈡埛榪炴帴鏁伴噺鐨勫澶氾紝鏋侀檺灝變細杈懼埌銆傚鏋滄湡鏈涙湇鍔″櫒鑳藉澶勭悊楂樺茍鍙戦氫俊錛屾湇鍔″櫒鍙互鍦ㄦ瘡涓繛鎺ヤ笂鎶曢掍竴涓?0 瀛楄妭鐨勬帴鍙楁搷浣滐紝榪欐牱灝變笉浼氭湁鍐呭瓨閿佸畾銆?0 瀛楄妭鐨勬帴鍙楀畬鎴愪互鍚庯紝鏈嶅姟鍣ㄥ彲浠ョ畝鍗曞湴鎵ц涓涓潪闃誨鐨勬帴鏀跺嚱鏁版潵鑾峰彇緙撳瓨鍦ㄥ鎺ュ瓧鎺ユ敹緙撳啿鍖轟腑鐨勬墍鏈夋暟鎹傚綋闈為樆濉炴帴鏀惰皟鐢ㄨ繑鍥?WSAEWOULDBLOCK 鏃訛紝灝辮〃紺轟笉鍐嶆湁鏈喅鐨勬暟鎹簡銆傝繖縐嶆柟娉曢潪甯擱傚悎鐢ㄦ潵璁捐閭d簺甯屾湜閫氳繃鐗虹壊姣忎釜濂楁帴瀛椾笂鐨勫悶鍚愮巼鏉ヨ幏鍙栨洿澶ц妯″茍鍙戣繛鎺ョ殑鏈嶅姟鍣ㄣ?

褰撶劧錛屾渶濂借繕瑕佷簡瑙e鎴風涓庢湇鍔″櫒閫氫俊鐨勬柟寮忋傚湪涓婇潰鐨勪緥瀛愪腑錛屽綋 0 瀛楄妭鐨勬帴鏀跺畬鎴愬悗錛屽啀鎶曢掍竴涓紓姝ユ帴鏀舵搷浣滐紝灝嗘帴鏀跺埌鎵鏈夌紦瀛樺湪濂楁帴瀛楁帴鏀剁紦鍐插尯涓殑鏁版嵁銆傚鏋滄湇鍔″櫒鐭ラ亾瀹㈡埛绔皢浼氳繛緇笉鏂彂閫佹暟鎹紝閭d箞褰?0 瀛楄妭鐨勬帴鏀跺畬鎴愬悗錛屽亣濡傚鎴風灝嗗彂閫佸ぇ鏁版嵁鍧楋紙瓚呰繃鍗曞鎺ュ瓧緙撳啿鍖?8KB 鐨勫閲忥級榪囨潵錛屾湇鍔″櫒灝嗘姏鍑轟竴涓垨澶氫釜閲嶅彔鐨勬帴鏀舵搷浣溿?

鍙﹀涓涓渶瑕侀噸鐐硅冭檻鐨勯棶棰樺氨鏄郴緇熸墍闇欏電殑鏁伴噺銆傚綋緋葷粺閿佸畾浼犻掔粰閲嶅彔鎿嶄綔鐨勫唴瀛樻椂錛屽畠鏄湪欏佃竟鐣屼笂榪涜鐨勩傚湪 x86 浣撶郴緇撴瀯涓婏紝鍐呭瓨欏電殑澶у皬涓?4KB 銆傚鏋滀竴涓搷浣滄姇閫掍簡 1KB 鐨勭紦鍐插尯錛岀郴緇熷疄闄呬笂浼氫負瀹冮攣瀹?4KB 澶у皬鐨勫唴瀛樺潡銆備負閬垮厤榪欑嫻垂錛岄噸鍙犲彂閫佸拰鎺ユ敹緙撳啿鍖虹殑澶у皬搴旇鏄〉澶у皬鐨勫嶆暟銆傚彲浠ヤ嬌鐢?GetSystemInfo 榪欎釜 API 鏉ヨ幏鐭ュ綋鍓嶇郴緇熼〉鐨勫ぇ灝忋?

濡傛灉紿佺牬闈炲垎欏墊睜鏋侀檺錛屽皢浼氬鑷存洿涓ラ噸鐨勯敊璇紝騫朵笖寰堥毦鎭㈠銆傞潪鍒嗛〉姹犳槸鍐呭瓨鐨勪竴閮ㄥ垎錛屽畠甯擱┗鍐呭瓨錛屽茍涓旀案榪滀笉浼氳浜ゆ崲鍑哄幓銆傚唴鏍告ā寮忕殑緋葷粺緇勪歡錛屽椹卞姩紼嬪簭錛岄氬父浣跨敤闈炲垎欏墊睜錛屽叾涓寘鎷?Winsock 鍜屽崗璁┍鍔ㄧ▼搴忥紝渚嬪 tcpip.sys 銆傛瘡涓鎺ュ瓧鐨勫垱寤哄皢娑堣椾竴灝忛儴鍒嗛潪鍒嗛〉姹狅紝鐢ㄤ簬緇存寔濂楁帴瀛楃姸鎬佷俊鎭傚綋濂楁帴瀛楃粦瀹氬埌涓涓湴鍧鍚庯紝 TCP/IP 鍫嗘爤灝嗗垎閰嶉澶栫殑闈炲垎欏墊睜鏉ヤ繚瀛樻湰鍦板湴鍧鐨勪俊鎭傚綋涓涓絳夊鎺ュ瓧鎺ュ叆鍚庯紝 TCP/IP 鍫嗘爤涔熷皢鍒嗛厤閮ㄥ垎闈炲垎欏墊睜鏉ヤ繚瀛樿繙紼嬪湴鍧淇℃伅銆傚熀鏈笂錛屼竴涓緩绔嬭繛鎺ョ殑濂楁帴瀛楀崰鐢?2KB 闈炲垎欏墊睜鍐呭瓨 , 鑰?accept 鎴?AcceptEx 榪斿洖鐨勫鎺ュ瓧鍒欏崰鐢?1.5KB 闈炲垎欏墊睜鍐呭瓨銆備箣鎵浠ュ嚭鐜拌繖涓尯鍒紝鏄洜涓烘湇鍔″櫒鏈湴鍦板潃淇℃伅宸茬粡瀛樺偍鍦ㄧ洃鍚鎺ュ瓧涓紝鏁?accept 鎴?AcceptEx 榪斿洖鐨勫鎺ュ瓧鍙渶淇濆瓨榪滅▼涓繪満鍦板潃淇℃伅銆傛澶栵紝姣忎釜鍦ㄥ鎺ュ瓧涓婃姇閫掔殑閲嶅彔鎿嶄綔閮介渶瑕佺粰 I/O 璇鋒眰鍖咃紙 IRP 錛夊垎閰嶅唴瀛橈紝涓涓?IRP 浣跨敤澶х害 500B 闈炲垎欏墊睜鍐呭瓨銆?

浠庝互涓婂垎鏋愬彲浠ョ湅鍑猴紝涓烘瘡涓繛鎺ュ垎閰嶇殑闈炲垎欏墊睜鍐呭瓨騫朵笉鏄緢澶с傜劧鑰岋紝闅忕潃瀹㈡埛榪炴帴閲忛愬錛屾湇鍔″櫒瀵歸潪鍒嗛〉姹犵殑浣跨敤灝嗘槸闈炲父澶х殑銆傝冭檻榪愯鍦ㄥ彧鏈?1GB 鐗╃悊鍐呭瓨鐨?Windows 2000 鎴栦互鍚庣増鏈?Windows 緋葷粺涓婄殑鏈嶅姟鍣紝灝嗘湁 256MB 鐨勫唴瀛橀潪閰嶇粰闈炲垎欏墊睜銆傞氬父錛岄潪鍒嗛〉姹犲ぇ灝忔槸鏈哄櫒鐗╃悊鍐呭瓨鐨?1/4 錛?Windows 2000 鍙婁互鍚庣増鏈殑 Windows 緋葷粺涓婏紝闈炲垎欏墊睜澶у皬涓?256MB 錛?/1GB 錛夛紝鑰?Windows NT 4.0 闄愬埗涓?128MB 錛?1GB 錛夈傛嫢鏈?256MB 鐨勯潪鍒嗛〉姹犵殑鏈嶅姟鍣ㄥ彲浠ユ敮鎸?50,000 鎴栨洿澶х殑榪炴帴閲忋備絾鏄繀欏婚檺鍒墮噸鍙犵殑 accept 鏁伴噺錛屼互鍙婂湪宸茬粡寤虹珛榪炴帴鐨勯噸鍙犳敹鍙戞搷浣溿傚湪榪欎釜渚嬪瓙涓紝濡傛灉宸茬粡寤虹珛榪炴帴鐨勫鎺ュ瓧錛屾寜姣忎釜 1.5KB 璁$畻錛屽皢鑰楄垂 75MB 鐨勯潪鍒嗛〉姹犲唴瀛樸傚鏋滈噰鐢ㄤ簡涓婇潰鎻愬強鐨勬姇閫?0 瀛楄妭鎺ユ敹鐨勬柟娉曪紝榪欐牱涓烘瘡涓繛鎺ュ垎閰嶇殑 IRP 灝嗗崰鐢?25MB 鐨勯潪鍒嗛〉姹犲唴瀛樸?

濡傛灉緋葷粺鑰楀敖浜嗛潪鍒嗛〉姹狅紝浼氭湁涓ょ鍙兘鐨勫悗鏋溿傚湪鏈濂界殑鎯呭喌涓嬶紝 Winsock 璋冪敤灝嗚繑鍥?WSAENOBUFS 閿欒銆傛渶緋熺硶鐨勬儏鍐墊槸緋葷粺宕╂簝錛岃繖縐嶆儏鍐甸氬父鏄郴緇熸病鑳芥紜鐞嗗唴瀛橀潪閰嶇殑闂閫犳垚鐨勩傛病鏈変竴縐嶅彲琛岀殑鏂規鑳藉鎭㈠闈炲垎欏墊睜鑰楀敖鐨勯敊璇紝騫朵笖涔熸病鏈夊彲琛岀殑鏂規鏉ョ洃瑙嗛潪鍒嗛〉姹犲彲鍒嗛厤鐨勫ぇ灝忥紝鍥犱負闈炲垎欏墊睜鑰楀敖瀵艱嚧緋葷粺宕╂簝銆?

鐢變互涓婃帰璁紝鍙互寰楀嚭緇撹錛屾病鏈変竴縐嶆柟娉曞彲浠ョ‘瀹氭湇鍔″櫒鍒板簳鏀寔澶氬ぇ鐨勫茍鍙戣繛鎺ュ拰閲嶅彔鎿嶄綔錛屽茍涓斾篃涓嶅彲鑳藉噯紜湴鑾風煡闈炲垎欏墊睜鏄惁鑰楀敖鎴栬呴攣瀹氬唴瀛橀〉鏁拌秴榪囨瀬闄愩傚洜涓哄畠浠兘灝嗗鑷?Winsock 璋冪敤閮借繑鍥炵浉鍚岀殑閿欒 鈥擶SAENOBUFS 銆傚洜涓轟互涓婂洜绱狅紝閽堝鏈嶅姟鍣ㄧ殑嫻嬭瘯蹇呴』嫻嬭瘯涓嶅悓鏁伴噺鐨勮繛鎺ユ儏鍐典互鍙婇噸鍙犳搷浣滃畬鎴愭儏鍐碉紝浠ヤ究鍦ㄥ茍鍙戦氫俊瑙勬ā鍜屾暟鎹悶鍚愮巼榪欎袱涓寚鏍囦箣闂撮夋嫨涓縐嶆姌涓殑鏂規銆傚鏋滃湪鏂規涓己鍔犻檺鍒訛紝浠ラ槻姝㈡湇鍔″櫒鑰楀敖闈炲垎欏墊睜錛屽垯榪斿洖 WSAENOBUFS 閿欒鏃訛紝鎴戜滑灝辯煡閬撴槸鍥犱負瓚呰繃浜嗛攣瀹氶〉鐨勯檺鍒躲傚茍涓斿彲浠ヤ互涓縐嶆洿浼樺寲鐨勫鐞嗘柟寮忕紪鍐欑▼搴忥紝濡傝繘涓姝ラ檺鍒朵竴浜涘緟鍐崇殑鎿嶄綔鎴栧叧闂煇浜涜繛鎺ャ?

鍖呴噸鏂版帓搴忛棶棰?

榪欎釜闂涓庝幾緙╂ф病鏈夊澶у叧鑱旓紝浣嗘槸鍗存槸瀹為檯閫氫俊涓笉寰椾笉鑰冭檻鐨勪竴涓棶棰橈紝鍥犱負瀹冩秹鍙婂埌鑳藉惁姝g‘閫氫俊鐨勯棶棰樸?

铏界劧浣跨敤瀹屾垚绔彛鐨?I/O 鎿嶄綔鎬繪槸浼氭寜鐓у畠浠鎻愪氦鐨勯『搴忓畬鎴愶紝浣嗘槸綰跨▼璋冨害闂鍙兘浼氬鑷村叧鑱斿埌瀹屾垚绔彛涓婄殑宸ヤ綔涓嶈兘鎸夋甯擱『搴忓畬鎴愩備緥濡傦紝鏈変袱涓?I/O 宸ヤ綔綰跨▼錛屽簲璇ユ帴鏀?鈥?瀛楄妭鍧?1 錛屽瓧鑺傚潡 2 錛屽瓧鑺傚潡 3鈥?錛屼絾鏄綘鍙兘浠ラ敊璇『搴忔帴鏀惰繖 3 涓瓧鑺傚潡錛?鈥?瀛楄妭鍧?2 錛屽瓧鑺傚潡 1 錛屽瓧鑺傚潡 3鈥?銆傝繖涔熸剰鍛崇潃鍦ㄥ畬鎴愮鍙d笂鎶曢掑彂閫佽姹傚彂閫佹暟鎹椂錛屾暟鎹疄闄呬篃浼氫互閿欒欏哄簭琚彂閫佸嚭鍘匯?

褰撶劧錛屽鏋滃彧浣跨敤涓涓伐浣滅嚎紼嬶紝浠呮彁浜や竴涓?I/O 璋冪敤錛屾槸涓嶅瓨鍦ㄩ『搴忛棶棰樼殑銆傚洜涓哄悓涓鏃跺埢錛屼竴涓伐浣滅嚎紼嬪彧鑳藉鐞嗕竴涓?I/O 鎿嶄綔銆備絾鏄紝榪欐牱灝辨病鏈夊彂鎸ュ嚭瀹屾垚绔彛鐨勭湡姝d紭鐐廣?

濡傜 3 绔犮婅嚜瀹氫箟搴旂敤灞傞氫俊鍗忚銆嬫墍榪幫紝涓涓畝鍗曠殑瑙e喅鏂規硶灝辨槸涓烘瘡涓皝鍖呮坊鍔犱竴涓崗璁ご銆傚崗璁ご涓昏鏄竴涓皝鍖呯殑瀹為檯瀛楄妭鏁幫紝濡傝嚜瀹氫箟 Package 鍖呯殑絎竴涓瓧孌?m_nCmdLen 灝辨槸榪欎釜鍖呭崰鐢ㄧ殑瀛楄妭鏁般傞氫俊鐨勬帴鍙楁柟閫氳繃鍒嗘瀽鍗忚澶村垎鏋愭湰嬈¢氫俊鏈夊灝戞暟鎹鎺ユ敹錛岀劧鍚庣戶緇鍚庨潰鐨勬暟鎹紝鐩村埌涓涓皝鍖呰瀹屾暣鎺ユ敹瀹屾墠鎺ユ敹涓嬩竴涓皝鍖呫?

褰撴湇鍔″櫒涓嬈′粎鍋氫竴涓紓姝ヨ皟鐢ㄦ椂錛屼笂榪板皝鍖呭崗璁ご鐨勮В鍐蟲柟妗堟槸寰堟湁鏁堢殑銆備絾鏄紝濡傛灉瑕佸厖鍒嗗彂鎸?IOCP 鏈嶅姟鍣ㄧ殑娼滃姏錛岃偗瀹氭湁澶氫釜鏈喅鐨勫紓姝ヨ鎿嶄綔絳夊緟鏁版嵁鐨勫埌鏉ャ傝繖鎰忓懗鐫錛屽涓竴姝ユ搷浣滀笉鑳芥寜欏哄簭瀹屾垚錛屾湭鍐寵 I/O 榪斿洖鐨勫瓧鑺傛祦涓嶈兘鎸夐『搴忓鐞嗭紝鎺ユ敹鍒扮殑瀛楄妭嫻佸彲鑳界粍鍚堟垚姝g‘鐨勫皝鍖咃紝涔熸湁鍙兘緇勫悎鎴愰敊璇殑灝佸寘銆傚洜姝わ紝瑕佽В鍐寵繖涓棶棰橈紝榪樺繀欏諱負鎻愪氦鐨勮 I/O 鍒嗛厤搴忓垪鍙楓?

璇存槑錛?

鏈枃涓昏璇戣嚜銆?Network programming for microsoft windows 銆嬩竴涔︾殑 6.2 鑺傘婂彲浼哥緝鐨勬湇鍔″櫒浣撶郴緇撴瀯銆嬪拰 6.3 鑺傘婅祫婧愮鐞嗐嬨?

鍏朵腑鍖呴噸鏂版帓搴忛棶棰橈紝鍙傝?鐜嬭壋騫寵憲 銆?Windows 緗戠粶涓庨氫俊紼嬪簭璁捐 銆?4.3.4 鑺傘婂寘閲嶆柊鎺掑簭闂銆?銆?



闃肯 2010-11-12 14:04 鍙戣〃璇勮
]]>
CVC鍐呴儴鏉傚織http://m.shnenglu.com/lapcca/archive/2010/11/11/133297.html闃肯闃肯Thu, 11 Nov 2010 04:44:00 GMThttp://m.shnenglu.com/lapcca/archive/2010/11/11/133297.htmlhttp://m.shnenglu.com/lapcca/comments/133297.htmlhttp://m.shnenglu.com/lapcca/archive/2010/11/11/133297.html#Feedback0http://m.shnenglu.com/lapcca/comments/commentRss/133297.htmlhttp://m.shnenglu.com/lapcca/services/trackbacks/133297.html CVC綆浠?/font>
聽聽聽 Chinese VXER Community(涓浗姣掑鍏ぞ)錛岀敱涓緹ゆ瘨瀹笌璁$畻鏈烘妧鏈埍濂借呯粍鎴愮殑緇勭粐銆傛垜浠殑鐩殑鏄?br />鎻ず闅愯棌鍦ㄧ梾姣掍箣鍚庣殑縐樺瘑錛岀爺絀剁梾姣掓妧鏈紝璺熻釜鐥呮瘨鍜屽弽鐥呮瘨鍙戝睍鐨勬渶鏂板姩鎬併?br />
鎴愬憳鍚嶅崟(鎷彿鍐呬負鍔犲叆鏃墮棿):

GroupA錛? 浜?/b>
VanCheer(020820)聽聽聽聽聽聽聽聽聽 e4gle(020821)聽聽聽聽聽聽聽聽聽聽聽聽聽 Whg(030323)

GroupB錛?3 浜?/b>
JACKHY(020820)聽聽聽聽聽聽 VXK(020821)聽聽聽聽聽聽 Longge(020821)聽聽聽聽聽聽聽聽聽 Hume(020821)
vBin(020821)聽聽聽聽聽聽聽聽 whale(020821)聽聽聽聽 guojpeng(020823)聽聽聽聽聽聽聽 youth(020829)
pkxp(020905)聽聽聽聽聽聽聽聽 wowocockl(020928) luandao2000(030411)聽聽聽聽 haiwei(030501)
椋庤埇鐨勭敺浜?030731)

瀹楁棬錛?/b>

1.鑷敱鐨勭梾姣掓妧鏈爺絀朵笌鍙戝睍
2.鏃犵晫鐨勬妧鏈氦嫻佷笌鍚堜綔
3.鏍稿績鎶鏈殑鐮旂┒浣夸腑鍥界殑鐥呮瘨鎶鏈揪鍒頒竴瀹氶珮搴︼紝鏅強鎶鏈殑鍙戝睍浣夸腑鍥界殑VXer緹や綋寰楀埌澧炲己銆?br />
鎴愬憳瑕佹眰錛?/b>

1.瀵圭梾姣掓妧鏈笉鎳堢殑鎺㈢儲
2.瀵瑰叕紺劇殑鐑埍
3.緇存姢鍏ぞ鐨勫0瑾夛紝涓嶅緱浠ュ叕紺懼悕涔夊彂甯冩伓鎰忕梾姣掞紙鎵鏈夋垚鍛樿鍙殑鍏鋒湁鐗瑰畾鐩殑鐨勯櫎澶栵級銆?br />濡傛灉鏈夊ソ鐨勪綔鍝佸彂甯冿紝欏誨湪浣滃搧鍐呮敞鏄庝綔鑰呭睘浜嶤VC銆?br />
鎴愬憳宸ヤ綔鏂瑰紡錛?/b>

聽聽聽 浠ヤ釜浜虹爺絀跺拰鐩鎬簰浜ゆ祦涓轟富銆傝嫢鏈夊ソ鐨勬兂娉曟垨欏圭洰闇瑕佸ぇ瀹朵竴璧峰姩鎵嬶紝澶у鍙互涓璧峰叡鍚屽畬鎴愩?br />澶у鏈夊ソ鐨勬兂娉曡屽張鑷繁鏃犲姏瀹屾垚鐨勶紝鍙互鍏竷鍑烘潵鐢卞ぇ瀹跺悎鍔涘畬鎴愩?br />聽聽聽 涓嶅鎴愬憳宸ヤ綔榪涜閲忎笂鐨勮姹傦紝浣嗗笇鏈涙湁璐ㄧ殑淇濊瘉銆傚鏋滄垚鍛樺崐騫撮兘娌℃湁鍑轟竴欏規垚鏋滐紙瀹屾暣鐥呮瘨錛?br />鏈夌敤鐨勪唬鐮侊紝鏂囩珷錛夛紝鍒欏叕紺捐瀵硅鎴愬憳鐨勫悎鏍煎害閲嶆柊榪涜瀹℃厧鐨勮冩牳銆?br />聽聽聽 鏈叕紺炬垚鍛樼姸鍐靛鏉傦紝寰堝閮芥湁綣佸繖宸ヤ綔瑕佸仛錛屾墍浠ュ鏋滃洜宸ヤ綔瀹炲湪绱у紶錛岄偅涔堝彲浠ュ鍏惰繘琛屽闄愩?br />鏃犺濡備綍錛屽笇鏈涙垚鍛樺湪鍙兘鐨勬儏鍐典笅澶氬嚭鎴愭灉銆?br />
緇勭粐鏂瑰紡錛?/b>

姘戜富錛嬭嚜鐢憋紜鑷緥

聽聽聽 鐜板凡寮濮嬪鐢寵鎴愬憳瀹炶鑰冩牳鍒訛紝鑰冩牳灝忕粍鐢?浜虹粍鎴愶紝鎶曠エ鍐沖畾銆傛垚鍛樼敵璇烽渶鎻愪氦鑷繁鐩稿簲浣滃搧,鎴愬憳
閫氳繃瀹℃牳鍚庣粰浜堢浉搴旀潈闄愶紝渚夸簬鍐呴儴浜ゆ祦銆?br />聽聽聽 鎴戣鐢寵鎴愪負鎴愬憳

鏈夊叧璇存槑:

聽聽聽 鎴戜滑甯屾湜CVC鐨勬垚鍛樹釜涓槸涓浗姣掑潧鐨勭簿鍗庯紝GA鎴愬憳鏇村簲璇ユ槸涓浗鐨勪竴嫻乂Xer錛屼篃鏇村簲璇ヤ粯鍑哄法澶?br />鐨勫姫鍔涖傛垜浠殑鎴愬憳涓嶆槸鍔犲叆灝卞彲浠ヤ簡錛岃鍑烘垚緇╋紝榪樻槸鏈夊緢澶у帇鍔涚殑銆傚挨鍏舵槸GA錛屾垜浠洿瑕佷弗鏍艱姹傦紝
涓鏃﹀彂鐜頒笉鍚堥傦紝鍧氬喅鎾ら攢韜喚錛岀粷涓嶇暀鎯咃紝璇峰ぇ瀹惰兘鏄庣櫧錛屽埌鏃朵笉瑕佹湁鎬ㄨ█銆傝偗鍔犲叆GA錛屽氨瑕佹湁鎵垮彈
鍘嬪姏鐨勫績鐞嗗噯澶囷紝灝辮鏈夊嚭鎴愮嘩鐨勫喅蹇冿紝鍚﹀垯榪樻槸涓嶈鍔犲叆鐨勫ソ銆?
聽聽聽 璁″垝GA鐨勬垚鍛樻暟鎺у埗鍦?錛?浜猴紝鏈澶氫笉瓚呰繃10浜猴紝鎵浠ユ垜浠浠旂粏閬撮夛紝鎴戜滑涔熶笉浼氳浜烘儏錛屾垜浠?br />瑕佺殑鏄妧鏈?
聽聽聽 鏈叕紺炬槸涓涓暱鏈熺殑緇勭粐錛屼篃闇瑕佸ぇ瀹墮暱鏈熺殑鍔姏鍜屾敮鎸併?




涓嬭澆



闃肯 2010-11-11 12:44 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              欧美日韩国产页| 国产模特精品视频久久久久| 久久综合给合| 国产欧美视频一区二区| 一卡二卡3卡四卡高清精品视频| 久久琪琪电影院| 亚洲综合色丁香婷婷六月图片| 欧美激情一区| 亚洲欧洲精品一区二区三区| 久久久欧美一区二区| 亚洲伊人久久综合| 国产精品国产三级国产| 亚洲无玛一区| 一本色道久久综合精品竹菊| 欧美日韩国产首页| 一本色道久久综合亚洲精品小说| 亚洲国产精品传媒在线观看| 久久九九免费视频| 国产亚洲一区在线| 久久香蕉国产线看观看av| 欧美亚洲日本国产| 国内精品久久久久久久影视麻豆 | 国产欧美日韩高清| 亚洲特级毛片| 中文在线资源观看视频网站免费不卡| 欧美精品久久久久久久久老牛影院| 亚洲国产成人精品久久久国产成人一区| 久久国产精品网站| 欧美在线播放| 在线欧美影院| 91久久精品一区| 欧美人在线观看| 亚洲一级黄色av| 亚洲午夜精品17c| 国产区精品视频| 久久美女艺术照精彩视频福利播放| 欧美在线视频免费播放| 亚洲电影自拍| 亚洲人成人一区二区在线观看| 欧美日韩久久精品| 午夜视频一区在线观看| 欧美一区二区三区视频在线| 亚洲丶国产丶欧美一区二区三区 | 亚洲福利久久| 欧美日韩一区二区高清| 欧美亚洲综合在线| 美女精品视频一区| 亚洲特级毛片| 欧美中文字幕视频| 亚洲精品久久久久久下一站| 亚洲视频精选在线| 国产精品综合色区在线观看| 亚洲综合色噜噜狠狠| 国产亚洲一区二区三区| 美女日韩欧美| 欧美日韩在线观看一区二区| 欧美在线视频二区| 久久一区二区三区超碰国产精品 | 久色婷婷小香蕉久久| 欧美黄色一区| 久久疯狂做爰流白浆xx| 欧美 亚欧 日韩视频在线| 亚洲午夜精品久久久久久app| 欧美尤物巨大精品爽| 夜夜嗨av一区二区三区网站四季av| 亚洲欧美激情视频| 99国产精品99久久久久久粉嫩| 亚洲欧美日韩在线一区| 日韩午夜免费视频| 久久aⅴ国产紧身牛仔裤| 亚洲一区二区四区| 美国成人直播| 久久人人爽人人爽| 国产精品一区三区| 亚洲伦理在线免费看| 黄色一区二区在线| 亚洲欧美日韩一区二区在线| 99在线精品观看| 裸体一区二区| 国产精品美女久久久| 亚洲国产高清一区| 一区在线播放视频| 亚洲欧美激情一区| 亚洲欧美国产毛片在线| 欧美精品午夜视频| 亚洲福利视频在线| 亚洲国产高清aⅴ视频| 欧美一进一出视频| 欧美亚洲视频在线观看| 欧美亚洲成人精品| 99精品国产福利在线观看免费| 揄拍成人国产精品视频| 亚洲一区日韩| 午夜精品一区二区在线观看| 欧美日韩在线一区| 99在线|亚洲一区二区| 99精品欧美| 欧美日韩第一页| 亚洲日本国产| 中文欧美在线视频| 欧美日韩亚洲一区二区三区在线观看| 亚洲福利视频二区| 亚洲精品在线观看免费| 欧美jjzz| 亚洲毛片一区| 亚洲午夜一区| 国产精品久久久久9999| 亚洲午夜在线观看| 欧美一区二区啪啪| 国产私拍一区| 久久九九热re6这里有精品| 久久躁狠狠躁夜夜爽| 一区视频在线播放| 亚洲国产精品成人| 99国产精品久久久久久久成人热| 欧美精品一区二区三区视频| 亚洲毛片av| 亚洲国产小视频| 国内揄拍国内精品久久| 久久免费偷拍视频| 亚洲福利视频在线| 亚洲影视在线播放| 国产一级揄自揄精品视频| 久久精品国内一区二区三区| 免费看黄裸体一级大秀欧美| 亚洲精品专区| 国产精品激情偷乱一区二区∴| 亚洲一区二区网站| 美女黄色成人网| 一区二区冒白浆视频| 国产精品一区二区在线观看不卡| 久久久久成人精品| 亚洲精品美女免费| 久久超碰97人人做人人爱| 亚洲成色777777女色窝| 欧美性猛交xxxx乱大交退制版| 欧美一级一区| 亚洲精品国产精品国自产在线| 欧美亚洲自偷自偷| 亚洲日本欧美日韩高观看| 欧美特黄一级| 久久久免费精品视频| 一区二区三区视频在线看| 久久尤物视频| 亚洲欧美激情在线视频| 亚洲狠狠丁香婷婷综合久久久| 国产精品高精视频免费| 乱中年女人伦av一区二区| 亚洲一区精彩视频| 亚洲精品自在在线观看| 美女精品网站| 欧美在线看片| 亚洲图片欧洲图片av| 在线播放亚洲一区| 国产老肥熟一区二区三区| 欧美岛国激情| 欧美在线播放一区二区| 日韩午夜中文字幕| 麻豆精品视频在线观看| 香蕉久久夜色精品国产| 99视频精品免费观看| 伊人一区二区三区久久精品| 国产精品三上| 欧美日韩伊人| 欧美国产精品v| 久久天天躁狠狠躁夜夜av| 一区二区国产在线观看| 亚洲欧洲日产国产综合网| 欧美成人激情在线| 久久亚洲私人国产精品va媚药| 午夜久久一区| 亚洲专区一区| 一区二区成人精品| 亚洲国产精品尤物yw在线观看| 韩日精品视频| 国模私拍一区二区三区| 国产精品夜夜夜一区二区三区尤| 欧美精品在欧美一区二区少妇| 麻豆av一区二区三区久久| 性欧美大战久久久久久久免费观看| 一区二区三区 在线观看视| 亚洲日韩视频| 亚洲日本va午夜在线电影| 亚洲欧洲视频在线| 亚洲毛片在线| 99成人在线| 一本色道久久综合狠狠躁的推荐| 日韩亚洲欧美成人一区| av不卡免费看| 中日韩高清电影网| 亚洲专区免费| 欧美在线|欧美| 久久久91精品国产一区二区精品| 国产婷婷一区二区| 影音先锋中文字幕一区| 一区二区三区无毛| 国产一区二区福利| 韩日欧美一区| 亚洲韩国一区二区三区| 亚洲精品一区二区三区婷婷月 |