锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久久久亚洲精品天堂,亚洲综合色7777情网站777,亚洲精品白色在线发布http://www.tkk7.com/thisliy/category/42849.htmlzh-cnMon, 30 Nov 2009 12:12:42 GMTMon, 30 Nov 2009 12:12:42 GMT60DllMain璇﹁Вhttp://www.tkk7.com/thisliy/archive/2009/11/30/304261.htmlliyangliyangMon, 30 Nov 2009 07:25:00 GMThttp://www.tkk7.com/thisliy/archive/2009/11/30/304261.htmlhttp://www.tkk7.com/thisliy/comments/304261.htmlhttp://www.tkk7.com/thisliy/archive/2009/11/30/304261.html#Feedback0http://www.tkk7.com/thisliy/comments/commentRss/304261.htmlhttp://www.tkk7.com/thisliy/services/trackbacks/304261.html

DllMain璇﹁В

1   DLL鐨勮繘鍏?閫鍑哄嚱鏁?/p>

1.1 DllMain綆浠?/p>

璺焑xe鏈変釜main鎴栬匴inMain鍏ュ彛鍑芥暟涓鏍鳳紝DLL涔熸湁涓涓叆鍙e嚱鏁幫紝灝辨槸DllMain銆備互“DllMain”涓哄叧閿瓧錛屾潵鐪嬬湅MSDN甯姪鏂囨。鎬庝箞浠嬬粛榪欎釜鍑芥暟鐨勩?/p>

The DllMain function is an optional method of entry into a dynamic-link library (DLL)銆傦紙綆瑕佺炕璇戯細瀵逛簬鍔ㄦ侀摼鎺ュ簱錛孌llMain鏄竴涓彲閫夌殑鍏ュ彛鍑芥暟銆傦級榪欏彞璇濆緢閲嶈錛屽緢澶氬垵瀛﹁呭彲鑳介兘璁や負涓涓姩鎬侀摼鎺ュ簱鑲畾瑕佹湁 DllMain鍑芥暟銆傚叾瀹炰笉鐒訛紝鍍忓緢澶氫粎浠呭寘鍚祫婧愪俊鎭殑DLL鏄病鏈塂llMain鍑芥暟鐨勩?/p>

1.2 浣曟椂璋冪敤DllMain

       緋葷粺鏄湪浠涔堟椂鍊欒皟鐢―llMain鍑芥暟鐨勫憿錛熼潤鎬侀摼鎺ユ椂錛屾垨鍔ㄦ侀摼鎺ユ椂璋冪敤LoadLibrary鍜孎reeLibrary閮戒細璋冪敤DllMain鍑芥暟銆侱llMain鐨勭涓変釜鍙傛暟fdwReason鎸囨槑浜嗙郴緇熻皟鐢―ll鐨勫師鍥狅紝瀹冨彲鑳芥槸:

DLL_PROCESS_ATTACH銆?/font>

DLL_PROCESS_DETACH銆?/font>

DLL_THREAD_ATTACH

DLL_THREAD_DETACH銆?/font>

浠ヤ笅浠庤繖鍥涚鎯呭喌鏉ュ垎鏋愮郴緇熶綍鏃惰皟鐢ㄤ簡DllMain銆?nbsp;           

1.2.1 DLL_PROCESS_ATTACH

       澶у閮界煡閬擄紝涓涓▼搴忚璋冪敤Dll閲岀殑鍑芥暟錛岄鍏堣鍏堟妸DLL鏂囦歡鏄犲皠鍒拌繘紼嬬殑鍦板潃絀洪棿銆傝鎶婁竴涓狣LL鏂囦歡鏄犲皠鍒拌繘紼嬬殑鍦板潃絀洪棿錛屾湁涓ょ鏂規硶錛氶潤鎬侀摼鎺ュ拰鍔ㄦ侀摼鎺ョ殑LoadLibrary鎴栬匧oadLibraryEx銆?/p>

       褰撲竴涓狣LL鏂囦歡琚槧灝勫埌榪涚▼鐨勫湴鍧絀洪棿鏃訛紝緋葷粺璋冪敤璇LL鐨凞llMain鍑芥暟錛屼紶閫掔殑fdwReason鍙傛暟涓? DLL_PROCESS_ATTACH銆傝繖縐嶈皟鐢ㄥ彧浼氬彂鐢熷湪絎竴嬈℃槧灝勬椂銆傚鏋滃悓涓涓繘紼嬪悗鏉ヤ負宸茬粡鏄犲皠榪涙潵鐨凞LL鍐嶆璋冪敤LoadLibrary鎴栬? LoadLibraryEx錛屾搷浣滅郴緇熷彧浼氬鍔燚LL鐨勪嬌鐢ㄦ鏁幫紝瀹冧笉浼氬啀鐢―LL_PROCESS_ATTACH璋冪敤DLL鐨凞llMain鍑芥暟銆備笉鍚? 榪涚▼鐢↙oadLibrary鍚屼竴涓狣LL鏃訛紝姣忎釜榪涚▼鐨勭涓嬈℃槧灝勯兘浼氱敤DLL_PROCESS_ATTACH璋冪敤DLL鐨凞llMain鍑芥暟銆?/p>

       鍙弬鑰僁llMainTest鐨凞LL_PROCESS_ATTACH_Test鍑芥暟銆?/p>

1.2.2 DLL_PROCESS_DETACH

       褰揇LL琚粠榪涚▼鐨勫湴鍧絀洪棿瑙i櫎鏄犲皠鏃訛紝緋葷粺璋冪敤浜嗗畠鐨凞llMain錛屼紶閫掔殑fdwReason鍊兼槸DLL_PROCESS_DETACH銆傚綋DLL澶勭悊璇ュ兼椂錛屽畠搴旇鎵ц榪涚▼鐩稿叧鐨勬竻鐞嗗伐浣溿?/p>

       閭d箞浠涔堟椂鍊橠LL琚粠榪涚▼鐨勫湴鍧絀洪棿瑙i櫎鏄犲皠鍛紵涓ょ鎯呭喌錛?/p>

       鈼咶reeLibrary瑙i櫎DLL鏄犲皠錛?font color="#ff0000">鏈夊嚑涓狶oadLibrary錛屽氨瑕佹湁鍑犱釜FreeLibrary錛?/p>

       鈼嗚繘紼嬬粨鏉熻岃В闄LL鏄犲皠錛屽湪榪涚▼緇撴潫鍓嶈繕娌℃湁瑙i櫎DLL鐨勬槧灝勶紝榪涚▼緇撴潫鍚庝細瑙i櫎DLL鏄犲皠銆傦紙濡傛灉榪涚▼鐨勭粓緇撴槸鍥犱負璋冪敤浜? TerminateProcess錛岀郴緇熷氨涓嶄細鐢―LL_PROCESS_DETACH鏉ヨ皟鐢―LL鐨凞llMain鍑芥暟銆傝繖灝辨剰鍛崇潃DLL鍦ㄨ繘紼嬬粨鏉熷墠 娌℃湁鏈轟細鎵ц浠諱綍娓呯悊宸ヤ綔銆傦級

       娉ㄦ剰錛氬綋鐢―LL_PROCESS_ATTACH璋冪敤DLL鐨凞llMain鍑芥暟鏃訛紝濡傛灉榪斿洖FALSE錛岃鏄庢病鏈夊垵濮嬪寲鎴愬姛錛岀郴緇熶粛浼氱敤DLL_PROCESS_DETACH璋冪敤DLL鐨凞llMain鍑芥暟銆傚洜姝わ紝蹇呴』紜繚娓呯悊閭d簺娌℃湁鎴愬姛鍒濆鍖栫殑涓滆タ銆?/font>

       鍙弬鑰僁llMainTest鐨凞LL_PROCESS_DETACH_Test鍑芥暟銆?/p>

1.2.3 DLL_THREAD_ATTACH

       褰撹繘紼嬪垱寤轟竴綰跨▼鏃訛紝緋葷粺鏌ョ湅褰撳墠鏄犲皠鍒拌繘紼嬪湴鍧絀洪棿涓殑鎵鏈塂LL鏂囦歡鏄犲儚錛屽茍鐢ㄥ糄LL_THREAD_ATTACH璋冪敤DLL鐨凞llMain鍑芥暟銆?/p>

鏂板垱寤虹殑綰跨▼璐熻矗鎵ц榪欐鐨凞LL鐨凞llMain鍑芥暟錛屽彧鏈夊綋鎵鏈夌殑DLL閮藉鐞嗗畬榪欎竴閫氱煡鍚庯紝緋葷粺鎵嶅厑璁歌繘紼嬪紑濮嬫墽琛屽畠鐨勭嚎紼嬪嚱鏁般?/p>

娉ㄦ剰璺烡LL_PROCESS_ATTACH鐨勫尯鍒紝鎴戜滑鍦ㄥ墠闈㈣榪囷紝絎? n(n>=2)嬈′互鍚庡湴鎶奃LL鏄犲儚鏂囦歡鏄犲皠鍒拌繘紼嬬殑鍦板潃絀洪棿鏃訛紝鏄笉鍐嶇敤DLL_PROCESS_ATTACH璋冪敤DllMain鐨勩傝? DLL_THREAD_ATTACH涓嶅悓錛岃繘紼嬩腑鐨勬瘡嬈″緩绔嬬嚎紼嬶紝閮戒細鐢ㄥ糄LL_THREAD_ATTACH璋冪敤DllMain鍑芥暟錛屽摢鎬曟槸綰跨▼涓緩绔? 綰跨▼涔熶竴鏍楓?/p>

1.2.4 DLL_THREAD_DETACH

       濡傛灉綰跨▼璋冪敤浜咵xitThread鏉ョ粨鏉熺嚎紼嬶紙綰跨▼鍑芥暟榪斿洖鏃訛紝緋葷粺涔熶細鑷姩璋冪敤ExitThread錛夛紝緋葷粺鏌ョ湅褰撳墠鏄犲皠鍒拌繘紼嬬┖闂翠腑鐨勬墍鏈塂LL鏂? 浠舵槧鍍忥紝騫剁敤DLL_THREAD_DETACH鏉ヨ皟鐢―llMain鍑芥暟錛岄氱煡鎵鏈夌殑DLL鍘繪墽琛岀嚎紼嬬駭鐨勬竻鐞嗗伐浣溿?/p>

       娉ㄦ剰錛氬鏋滅嚎紼嬬殑緇撴潫鏄洜涓虹郴緇熶腑鐨勪竴涓嚎紼嬭皟鐢ㄤ簡TerminateThread錛岀郴緇熷氨涓嶄細鐢ㄥ糄LL_THREAD_DETACH鏉ヨ皟鐢ㄦ墍鏈塂LL鐨凞llMain鍑芥暟銆?/p>

1.3 涓篋llMain鎹㈠悕

鍦ㄦ棭鏈熺殑SDK鐗堟湰涓紝DllMain鏄彨鍋欴llEntryPoint銆傚叾瀹炴湁涓浠墮矞涓轟漢 鐭ョ殑浜嬶細涓涓狣ll鐨勫叆鍙e嚱鏁板悕鏄彲浠ヨ嚜宸卞畾涔夌殑銆備笅闈㈡垜灝嗕互VC++6.0涓轟緥鏉ユ紨紺哄浣曟洿鏀廣傞鍏堣璇存槑涓鐐癸紝铏界劧DllMain鍙互鎹㈡垚鍏朵粬鍑芥暟 鍚嶏紝浣嗗嚱鏁扮殑鍙傛暟鍜岃繑鍥炲煎繀欏誨拰DllMain涓鏍楓傝屼笖榪欎釜鍑芥暟瑕佷負__stdcall綾誨瀷錛圖llMain鏈韓涔熸槸__stdcall綾誨瀷錛夈?/p>

鎵撳紑VC++鑿滃崟Project"Settings"Link tab" Output in the Category box錛屽涓嬪浘錛屽湪Entry-point symbol涓緭鍏ヨ鏇挎崲DllMain鐨勫嚱鏁板悕錛堝綋鐒惰繖涓嚱鏁板悕鏄綘紼嬪簭涓凡緇忓疄鐜扮殑鍑芥暟錛夈侲ntry-point symbol鏄共涔堢殑鍛紵鍙互浠ュ叧閿瓧“Entry-point symbol”鎼滅儲MSDN甯姪鏂囨。鏌ョ湅錛屾悳绱㈡椂錛屾墦閽?#8220;浠呮悳绱㈡爣棰?#8221;浼氭洿蹇畾浣嶃?/p>

DllMain璇﹁В - 鐢熸椿 - 鏃犳晫

         鎸塐K鍚庯紝濡傛灉椹笂緙栬瘧鐨勮瘽浼氬嚭鐜板涓嬮敊璇細

LIBCMTD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main

Debug/Dll.dll : fatal error LNK1120: 1 unresolved externals

鎵撳紑VC++鑿滃崟Project"Settings"C/C++閫夐」鍗★紝濡備笅鍥撅紝鍦? Project Options錛氭湯灝劇殑鍦版柟娣誨姞”/D”錛堝浘涓摑鑹查珮浜殑鍦版柟錛夛紝瑕佹敞鎰忎綅緗紝鎴戣瘯浜嗭紝瑕佹妸/D鏀懼埌/GZ鍚庨潰涔熶細閾炬帴閿欒錛屾垜涔熶笉鎳備負浠涔堬紝^_^銆傛寜 OK錛屽啀嬈$紪璇戯紝鎴愬姛銆傚ぇ瀹跺彲浠ヨ嚜宸辨祴璇曚笅鍒板簳鏈夋病鏈夋洿鏀規垚鍔燂紝浠涔堬紝濡傛灉嫻嬭瘯錛熸墦鍑鴻皟寮忎俊鎭晩銆?/p>

DllMain璇﹁В - 鐢熸椿 - 鏃犳晫

1.4 DisableThreadLibraryCalls

鐪嬪府鍔╁氨鐭ラ亾瀹冩槸騫蹭箞鐢ㄧ殑錛?/p>

The DisableThreadLibraryCalls function disables the DLL_THREAD_ATTACH and DLL_THREAD_DETACH notifications for the dynamic-link library (DLL) specified by hLibModule. This can reduce the size of the working code set for some applications.

杞嚜:http://blog.csdn.net/benkaoya/archive/2008/06/02/2504781.aspx



liyang 2009-11-30 15:25 鍙戣〃璇勮
]]>
typedef鐨勫洓涓敤閫斿拰涓や釜闄烽槺http://www.tkk7.com/thisliy/archive/2009/11/25/303564.htmlliyangliyangWed, 25 Nov 2009 02:08:00 GMThttp://www.tkk7.com/thisliy/archive/2009/11/25/303564.htmlhttp://www.tkk7.com/thisliy/comments/303564.htmlhttp://www.tkk7.com/thisliy/archive/2009/11/25/303564.html#Feedback0http://www.tkk7.com/thisliy/comments/commentRss/303564.htmlhttp://www.tkk7.com/thisliy/services/trackbacks/303564.html鐢ㄩ斾竴錛?
瀹氫箟涓縐嶇被鍨嬬殑鍒悕錛岃屼笉鍙槸綆鍗曠殑瀹忔浛鎹€傚彲浠ョ敤浣滃悓鏃跺0鏄庢寚閽堝瀷鐨勫涓璞°傛瘮濡傦細
char* pa, pb;  // 榪欏鏁頒笉絎﹀悎鎴戜滑鐨勬剰鍥撅紝瀹冨彧澹版槑浜嗕竴涓寚鍚戝瓧絎﹀彉閲忕殑鎸囬拡錛?nbsp;
// 鍜屼竴涓瓧絎﹀彉閲忥紱
浠ヤ笅鍒欏彲琛岋細
typedef char* PCHAR;  // 涓鑸敤澶у啓
PCHAR pa, pb;        // 鍙錛屽悓鏃跺0鏄庝簡涓や釜鎸囧悜瀛楃鍙橀噺鐨勬寚閽?
铏界劧錛?
char *pa, *pb;
涔熷彲琛岋紝浣嗙浉瀵規潵璇存病鏈夌敤typedef鐨勫艦寮忕洿瑙傦紝灝ゅ叾鍦ㄩ渶瑕佸ぇ閲忔寚閽堢殑鍦版柟錛宼ypedef鐨勬柟寮忔洿鐪佷簨銆?

鐢ㄩ斾簩錛?
鐢ㄥ湪鏃х殑C浠g爜涓紙鍏蜂綋澶氭棫娌℃湁鏌ワ級錛屽府鍔﹕truct銆備互鍓嶇殑浠g爜涓紝澹版槑struct鏂板璞℃椂錛屽繀欏昏甯︿笂struct錛屽嵆褰㈠紡涓猴細 struct 緇撴瀯鍚?nbsp;瀵硅薄鍚嶏紝濡傦細
struct tagPOINT1
{
    int x;
    int y;
};
struct tagPOINT1 p1; 

鑰屽湪C++涓紝鍒欏彲浠ョ洿鎺ュ啓錛氱粨鏋勫悕 瀵硅薄鍚嶏紝鍗籌細
tagPOINT1 p1;

浼拌鏌愪漢瑙夊緱緇忓父澶氬啓涓涓猻truct澶夯鐑︿簡錛屼簬鏄氨鍙戞槑浜嗭細
typedef struct tagPOINT
{
    int x;
    int y;
}POINT;

POINT p1; // 榪欐牱灝辨瘮鍘熸潵鐨勬柟寮忓皯鍐欎簡涓涓猻truct錛屾瘮杈冪渷浜嬶紝灝ゅ叾鍦ㄥぇ閲忎嬌鐢ㄧ殑鏃跺?

鎴栬錛屽湪C++涓紝typedef鐨勮繖縐嶇敤閫斾簩涓嶆槸寰堝ぇ錛屼絾鏄悊瑙d簡瀹冿紝瀵規帉鎻′互鍓嶇殑鏃т唬鐮佽繕鏄湁甯姪鐨勶紝姣曠珶鎴戜滑鍦ㄩ」鐩腑鏈夊彲鑳戒細閬囧埌杈冩棭浜涘勾浠i仐鐣欎笅鏉ョ殑浠g爜銆?

鐢ㄩ斾笁錛?
鐢╰ypedef鏉ュ畾涔変笌騫沖彴鏃犲叧鐨勭被鍨嬨?
姣斿瀹氫箟涓涓彨 REAL 鐨勬誕鐐圭被鍨嬶紝鍦ㄧ洰鏍囧鉤鍙頒竴涓婏紝璁╁畠琛ㄧず鏈楂樼簿搴︾殑綾誨瀷涓猴細
typedef long double REAL; 
鍦ㄤ笉鏀寔 long double 鐨勫鉤鍙頒簩涓婏紝鏀逛負錛?
typedef double REAL; 
鍦ㄨ繛 double 閮戒笉鏀寔鐨勫鉤鍙頒笁涓婏紝鏀逛負錛?
typedef float REAL; 
涔熷氨鏄錛屽綋璺ㄥ鉤鍙版椂錛屽彧瑕佹敼涓?nbsp;typedef 鏈韓灝辮錛屼笉鐢ㄥ鍏朵粬婧愮爜鍋氫換浣曚慨鏀廣?
鏍囧噯搴撳氨騫挎硾浣跨敤浜嗚繖涓妧宸э紝姣斿size_t銆?
鍙﹀錛屽洜涓簍ypedef鏄畾涔変簡涓縐嶇被鍨嬬殑鏂板埆鍚嶏紝涓嶆槸綆鍗曠殑瀛楃涓叉浛鎹紝鎵浠ュ畠姣斿畯鏉ュ緱紼沖仴錛堣櫧鐒剁敤瀹忔湁鏃朵篃鍙互瀹屾垚浠ヤ笂鐨勭敤閫旓級銆?

鐢ㄩ斿洓錛?
涓哄鏉傜殑澹版槑瀹氫箟涓涓柊鐨勭畝鍗曠殑鍒悕銆傛柟娉曟槸錛氬湪鍘熸潵鐨勫0鏄庨噷閫愭鐢ㄥ埆鍚嶆浛鎹竴閮ㄥ垎澶嶆潅澹版槑錛屽姝ゅ驚鐜紝鎶婂甫鍙橀噺鍚嶇殑閮ㄥ垎鐣欏埌鏈鍚庢浛鎹紝寰楀埌鐨勫氨鏄師澹版槑鐨勬渶綆鍖栫増銆備婦渚嬶細

1. 鍘熷0鏄庯細int *(*a[5])(int, char*);
鍙橀噺鍚嶄負a錛岀洿鎺ョ敤涓涓柊鍒悕pFun鏇挎崲a灝卞彲浠ヤ簡錛?
typedef int *(*pFun)(int, char*); 
鍘熷0鏄庣殑鏈綆鍖栫増錛?
pFun a[5]; 

2. 鍘熷0鏄庯細void (*b[10]) (void (*)());
鍙橀噺鍚嶄負b錛屽厛鏇挎崲鍙寵竟閮ㄥ垎鎷彿閲岀殑錛宲FunParam涓哄埆鍚嶄竴錛?
typedef void (*pFunParam)();
鍐嶆浛鎹㈠乏杈圭殑鍙橀噺b錛宲Funx涓哄埆鍚嶄簩錛?
typedef void (*pFunx)(pFunParam);
鍘熷0鏄庣殑鏈綆鍖栫増錛?
pFunx b[10];

3. 鍘熷0鏄庯細doube(*)() (*e)[9]; 
鍙橀噺鍚嶄負e錛屽厛鏇挎崲宸﹁竟閮ㄥ垎錛宲Funy涓哄埆鍚嶄竴錛?
typedef double(*pFuny)();
鍐嶆浛鎹㈠彸杈圭殑鍙橀噺e錛宲FunParamy涓哄埆鍚嶄簩
typedef pFuny (*pFunParamy)[9];
鍘熷0鏄庣殑鏈綆鍖栫増錛?
pFunParamy e; 

鐞嗚В澶嶆潅澹版槑鍙敤鐨?#8220;鍙沖乏娉曞垯”錛氫粠鍙橀噺鍚嶇湅璧鳳紝鍏堝線鍙籌紝鍐嶅線宸︼紝紕板埌涓涓渾鎷彿灝辮皟杞槄璇葷殑鏂瑰悜錛涙嫭鍙峰唴鍒嗘瀽瀹屽氨璺沖嚭鎷彿錛岃繕鏄寜鍏堝彸鍚庡乏鐨勯『搴忥紝濡傛寰幆錛岀洿鍒版暣涓0鏄庡垎鏋愬畬銆備婦渚嬶細
int (*func)(int *p);
棣栧厛鎵懼埌鍙橀噺鍚峟unc錛屽闈㈡湁涓瀵瑰渾鎷彿錛岃屼笖宸﹁竟鏄竴涓?鍙鳳紝榪欒鏄巉unc鏄竴涓寚閽堬紱鐒跺悗璺沖嚭榪欎釜鍦嗘嫭鍙鳳紝鍏堢湅鍙寵竟錛屽張閬囧埌鍦嗘嫭鍙鳳紝榪欒鏄? (*func)鏄竴涓嚱鏁幫紝鎵浠unc鏄竴涓寚鍚戣繖綾誨嚱鏁扮殑鎸囬拡錛屽嵆鍑芥暟鎸囬拡錛岃繖綾誨嚱鏁板叿鏈塱nt*綾誨瀷鐨勫艦鍙傦紝榪斿洖鍊肩被鍨嬫槸int銆?
int (*func[5])(int *);
func鍙寵竟鏄竴涓猍]榪愮畻絎︼紝璇存槑func鏄叿鏈?涓厓绱犵殑鏁扮粍錛沠unc鐨勫乏杈規湁涓涓?錛岃鏄巉unc鐨勫厓绱犳槸鎸囬拡錛堟敞鎰忚繖閲岀殑*涓嶆槸淇グ func錛岃屾槸淇グfunc[5]鐨勶紝鍘熷洜鏄痆]榪愮畻絎︿紭鍏堢駭姣?楂橈紝func鍏堣窡[]緇撳悎錛夈傝煩鍑鴻繖涓嫭鍙鳳紝鐪嬪彸杈癸紝鍙堥亣鍒板渾鎷彿錛岃鏄巉unc鏁扮粍鐨? 鍏冪礌鏄嚱鏁扮被鍨嬬殑鎸囬拡錛屽畠鎸囧悜鐨勫嚱鏁板叿鏈塱nt*綾誨瀷鐨勫艦鍙傦紝榪斿洖鍊肩被鍨嬩負int銆?

涔熷彲浠ヨ浣?涓ā寮忥細
type (*)(....)鍑芥暟鎸囬拡 
type (*)[]鏁扮粍鎸囬拡 
錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛嶏紞錛?

闄烽槺涓錛?
璁頒綇錛宼ypedef鏄畾涔変簡涓縐嶇被鍨嬬殑鏂板埆鍚嶏紝涓嶅悓浜庡畯錛屽畠涓嶆槸綆鍗曠殑瀛楃涓叉浛鎹€傛瘮濡傦細
鍏堝畾涔夛細
typedef char* PSTR;
鐒跺悗錛?
int mystrcmp(const PSTR, const PSTR);

const PSTR瀹為檯涓婄浉褰撲簬const char*鍚楋紵涓嶆槸鐨勶紝瀹冨疄闄呬笂鐩稿綋浜巆har* const銆?
鍘熷洜鍦ㄤ簬const緇欎簣浜嗘暣涓寚閽堟湰韜互甯擱噺鎬э紝涔熷氨鏄艦鎴愪簡甯擱噺鎸囬拡char* const銆?
綆鍗曟潵璇達紝璁頒綇褰揷onst鍜宼ypedef涓璧峰嚭鐜版椂錛宼ypedef涓嶄細鏄畝鍗曠殑瀛楃涓叉浛鎹㈠氨琛屻?

闄烽槺浜岋細
typedef鍦ㄨ娉曚笂鏄竴涓瓨鍌ㄧ被鐨勫叧閿瓧錛堝auto銆乪xtern銆乵utable銆乻tatic銆乺egister絳変竴鏍鳳級錛岃櫧鐒跺畠騫朵笉鐪熸褰卞搷瀵硅薄鐨勫瓨鍌ㄧ壒鎬э紝濡傦細
typedef static int INT2; //涓嶅彲琛?
緙栬瘧灝嗗け璐ワ紝浼氭彁紺?#8220;鎸囧畾浜嗕竴涓互涓婄殑瀛樺偍綾?#8221;銆?


liyang 2009-11-25 10:08 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 亚洲精品无码人妻无码| 亚洲天堂免费在线| 久久国产乱子伦精品免费午夜 | 成人永久免费高清| 亚洲区日韩精品中文字幕| 97无码免费人妻超级碰碰夜夜| 亚洲一区二区三区免费观看| 青青视频观看免费99| 亚洲中文字幕久久精品无码2021| 97国产免费全部免费观看| 亚洲一级毛片免费在线观看| 99久久这里只精品国产免费| 亚洲人成77777在线观看网| 女人毛片a级大学毛片免费| 亚洲欧美自偷自拍另类视| 日韩免费毛片视频| 青青草97国产精品免费观看| 一本色道久久88综合亚洲精品高清| 国产高潮久久免费观看| 亚洲AV乱码一区二区三区林ゆな| 88av免费观看| 亚洲日韩精品无码专区加勒比 | 亚洲精品无码永久在线观看你懂的| 精品亚洲永久免费精品| 亚洲国产精品张柏芝在线观看| 无码高潮少妇毛多水多水免费| 男女交性无遮挡免费视频| 亚洲精品制服丝袜四区| 日本h在线精品免费观看| 亚洲免费综合色在线视频| 亚洲男女内射在线播放| 无码人妻丰满熟妇区免费| 国产精品亚洲精品| 国产成人精品久久亚洲| 美丽姑娘免费观看在线观看中文版| 亚洲一区免费在线观看| 亚洲国产成人精品91久久久 | 你懂的免费在线观看网站| 亚洲乱码一二三四区麻豆| 亚洲一区二区视频在线观看| 50岁老女人的毛片免费观看|