锘??xml version="1.0" encoding="utf-8" standalone="yes"?>狠狠色婷婷久久一区二区,伊人久久大香线蕉av不变影院,精品国产乱码久久久久久人妻http://m.shnenglu.com/franksunny/archive/2010/04/22/113265.htmlfrank.sunnyfrank.sunnyThu, 22 Apr 2010 11:13:00 GMThttp://m.shnenglu.com/franksunny/archive/2010/04/22/113265.htmlhttp://m.shnenglu.com/franksunny/comments/113265.htmlhttp://m.shnenglu.com/franksunny/archive/2010/04/22/113265.html#Feedback0http://m.shnenglu.com/franksunny/comments/commentRss/113265.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/113265.html 

鍏充簬Symbian璇嗗埆縐誨姩銆佽仈閫氬拰鍏跺畠榪愯惀鍟嗙綉緇滅殑鏂規硶

 

鑷粠Symbian OS鍦?/span>EKA2鎻愪緵浜嗗己澶х殑CTelephony錛岃繖涔嬪悗寰堝璺熺綉緇滅浉鍏崇殑鍙傛暟閮介氳繃榪欎釜鑾峰彇錛屽儚璇嗗埆鐩墠鎵嬫満鏄敞鍐岀殑鏄Щ鍔ㄨ繕鏄仈閫氱瓑淇℃伅緗戠粶涓婁紶鐨勬瘮杈冨鐨勪篃鏄氳繃璇ユ柟娉曪紝鐗瑰埆鏄暩澶╁厔鍦?/span>nokia璁哄潧鍒嗕韓浜嗕唬鐮佷箣鍚庯紝緗戠粶涓婂ぇ澶氶噰鐢ㄥ叾浠g爜錛屽綋鐒朵篃鍖呮嫭鎴戣繖鏍風殑鎳掍漢鍦ㄥ唴錛岃屼笖寰寰寰堝浜洪兘娌℃湁娉ㄦ剰鏈鍏抽敭鐨勫師鐞嗗嵆“鍥介檯縐誨姩鐢ㄦ埛璇嗗埆鐮侊紙IMSI錛?/span>International Mobile Subscriber Identification Number錛夋槸鍖哄埆縐誨姩鐢ㄦ埛鐨勬爣蹇楋紝鍌ㄥ瓨鍦?/span>SIM鍗′腑錛屽彲鐢ㄤ簬鍖哄埆縐誨姩鐢ㄦ埛鐨勬湁鏁堜俊鎭?/span>IMSI鐢?/span>MCC銆?/span>MNC銆?/span>MSIN緇勬垚錛屽叾涓?/span>MCC涓虹Щ鍔ㄥ浗瀹跺彿鐮侊紝鐢?/span>3浣嶆暟瀛楃粍鎴愶紝鍞竴鍦拌瘑鍒Щ鍔ㄥ鎴鋒墍灞炵殑鍥藉錛屾垜鍥戒負460錛?/span>MNC涓虹綉緇?/span>id錛岀敱2浣嶆暟瀛楃粍鎴愶紝鐢ㄤ簬璇嗗埆縐誨姩瀹㈡埛鎵褰掑睘鐨勭Щ鍔ㄧ綉緇滐紝涓浗縐誨姩涓?/span>00錛屼腑鍥借仈閫氫負01錛?/span>MSIN涓虹Щ鍔ㄥ鎴瘋瘑鍒爜錛岄噰鐢ㄧ瓑闀?/span>11浣嶆暟瀛楁瀯鎴?#8221;銆傚叿浣撹瑙?/span>http://wiki.forum.nokia.com/index.php/%E5%8C%BA%E5%88%86%E5%BD%93%E5%89%8D%E7%94%A8%E6%88%B7SIM%E5%8D%A1%E6%98%AF%E7%A7%BB%E5%8A%A8%E8%BF%98%E6%98%AF%E8%81%94%E9%80%9A

鏈榪戝湪浣跨敤璇ヤ唬鐮佹椂錛屽彂鐜板亣濡傚綋鎵嬫満澶勪簬紱葷嚎鐘舵佷笅錛屽垯涓嶈鏈夋棤鎻?/span>SIM鍗★紝浣跨敤鍟稿ぉ鍏勭殑鏂規硶錛屽氨璇嗗埆涓嶅嚭鏉ヤ簡錛岃繖涓簲璇ヨ窡CTelephony鐨勫疄鐜版湁鍏籌紝鏈漢璇曠潃閫氳繃鍏舵簮鐮佸幓浜嗚В浜嗭紝浣嗘槸璨屼技璺熻釜鍒板簳灞傛病鏈夊畬鍏ㄥ叕寮錛屾垨鑰呰涓漢鐪嬫簮鐮佽兘鍔涜繕澶急浜嗕簺銆傜敱浜庨噰鐢ㄥ暩澶╁厔鏂規硶瀹炵幇涓嶄簡浜嗭紝鎵浠ュ彧鑳戒粠涓婇潰鐨勭孩澶存枃浠訛紙鍗崇孩浣撳瓧錛夊鎵捐В鍐蟲柟娉曪紝铏界劧CTelephony::GetCurrentNetworkInfo鍦ㄧ綰挎ā寮忎笅澶辨晥錛屼絾鏄?/span>CTelephony::GetSubscriberId浠嶇劧鍙敤錛屼負姝ゆ垜浠氨鍙互閫氳繃鐩存帴鍒嗘瀽IMSI鏉ュ疄鐜板榪愯惀鍟嗙綉緇滅殑璇嗗埆錛岃嚦浜?/span>MNC鐨勪俊鎭紝澶у鍙互鏌ヨhttp://en.wikipedia.org/wiki/Mobile_network_code錛屽湪鍥藉唴鐨勬儏鍐靛涓嬫埅鍥撅細

鏃㈢劧鐭ラ亾浜嗗涓婁俊鎭紝鎴戜滑灝卞彲浠ョ畝鍗曠殑瀵?/span>IMSI鍙瘋繘琛屽垎鏋愪簡錛屽皬鍙鍟稿ぉ鍏勭殑浠g爜榪涜綆鍗曚慨鏀癸紝褰撶劧璇ヤ唬鐮佷篃鏄嬌鐢?/span>CTelephony錛屽彧鑳戒嬌鐢ㄥ湪EKA2騫沖彴涓婏紝EKA1鍙互閲囩敤RMobilePhone::GetSubscriberId鐨勬柟娉曟潵鑾峰彇IMSI錛屽湪榪欓噷涔熷氨涓嶅仛灞曞紑浜嗭紝鍏蜂綋浠g爜濡備笅錛?/span>

澶存枃浠?/span>

/*

 * TelephonyAO.h

 *

 *  Created on: 2010-4-22

 *      Author: frank

 */

 

#ifndef TELEPHONYAO_H_

#define TELEPHONYAO_H_

 

#include <e32base.h>

#include <Etel3rdParty.h>

 

typedef enum

{

       ENetWorkUnKnow,

       ENetWorkCM,

       ENetWorkUN,

       ENetWorkTC,

       ENetWorkTT,

}TNetWorkType;

 

class CTelephonyAO : public CActive

{

public:

       static CTelephonyAO* NewL();

       TNetWorkType GetNetWorkId();

 

public:

       ~CTelephonyAO();

 

protected:

       void DoCancel();

       void RunL();

 

private:

       CTelephonyAO();

       void ConstructL();

 

       void GetNetWorkInfo();

 

private:

       CActiveSchedulerWait*                iActiveSchedulerWait;

       CTelephony*                        pTelephony_;

       CTelephony::TSubscriberIdV1             iSubscribId;

       CTelephony::TSubscriberIdV1Pckg     iSubscriberIdPckg;

};

 

#endif /* TELEPHONYAO_H_ */

 

瀹炵幇鏂囦歡

/*

 * TelephonyAO.cpp

 *

 *  Created on: 2010-4-22

 *      Author: frank

 */

 

#include "TelephonyAO.h"

 

CTelephonyAO::CTelephonyAO() : CActive(EPriorityStandard), iSubscriberIdPckg(iSubscribId)

{

      

}

 

CTelephonyAO::~CTelephonyAO()

{

       delete pTelephony_;

       pTelephony_ = NULL;

       delete iActiveSchedulerWait;

       iActiveSchedulerWait = NULL;

}

 

void CTelephonyAO::ConstructL()

{

       pTelephony_ = CTelephony::NewL();

       iActiveSchedulerWait = new (ELeave)CActiveSchedulerWait;

       CActiveScheduler::Add(this);

}

 

CTelephonyAO* CTelephonyAO::NewL()

{

       CTelephonyAO* pSelf = new(ELeave) CTelephonyAO;

       CleanupStack::PushL(pSelf);

       pSelf->ConstructL();

       CleanupStack::Pop();

       return pSelf;

}

 

void CTelephonyAO::RunL()

{

 

       if (iActiveSchedulerWait->IsStarted())

       {

              iActiveSchedulerWait->AsyncStop();

       }

}

 

void CTelephonyAO::DoCancel()

{

       pTelephony_->CancelAsync(CTelephony::EGetSubscriberIdCancel);

       if (iActiveSchedulerWait->IsStarted())

       {

              iActiveSchedulerWait->AsyncStop();

       }

}

 

void CTelephonyAO::GetNetWorkInfo()

{

       Cancel();

       pTelephony_->GetSubscriberId(iStatus, iSubscriberIdPckg);

       SetActive();

       iActiveSchedulerWait->Start();

}

 

TNetWorkType CTelephonyAO::GetNetWorkId()

{

       GetNetWorkInfo();

       TNetWorkType vNetWorkType = ENetWorkUnKnow;

       if(iSubscribId.iSubscriberId.Length() < 15)

       {

              vNetWorkType = ENetWorkUnKnow;

       }

       else

       {

              TBuf<6> vHeader;

              vHeader.Copy(iSubscribId.iSubscriberId.Left(5));

              TBuf<3> vPtrTemp;

              vPtrTemp.Copy(vHeader.Right(2));

              TInt vNetWorkId = 0;

              TLex vLex(vPtrTemp);

              vLex.Val(vNetWorkId);

              if((vNetWorkId == 1) ||(vNetWorkId == 6))

              {

                     vNetWorkType = ENetWorkUN;

              }

              else if((vNetWorkId == 0) ||(vNetWorkId == 2))

              {

                     vNetWorkType = ENetWorkCM;

              }

              else if((vNetWorkId == 3) ||(vNetWorkId == 5))

              {

                     vNetWorkType = ENetWorkTC;

              }

              else if(vNetWorkId == 20)

              {

                     vNetWorkType = ENetWorkTT;

              }

              else

              {

                     vNetWorkType = ENetWorkUnKnow;

              }

       }

       return vNetWorkType;

}

鑷充簬濡備綍璋冪敤錛屽氨鍙互閫氳繃濡備笅綆鍗曡幏鍙栦簡錛屼笉鐢ㄥ啀鑷繁鍘繪瘮杈冧簡銆?/span>

       CTelephonyAO* pTelephony = CTelephonyAO::NewL();

       CleanupStack::PushL(pTelephony);

       TNetWorkType vNetWorkType = pTelephony->GetNetWorkId();

       CleanupStack::PopAndDestroy(pTelephony);

濂戒簡錛屾殏鏃跺皬緇撳涓嬪惂錛屾劅璋㈠暩澶╁厔鍓嶄漢妞嶆爲銆?/span>



frank.sunny 2010-04-22 19:13 鍙戣〃璇勮
]]>
[杞姞鏁寸悊]Symbian涓嬬敤C++瀹炵幇緗戦〉嫻忚鐨勪唬鐮?http://m.shnenglu.com/franksunny/archive/2009/08/12/93044.htmlfrank.sunnyfrank.sunnyWed, 12 Aug 2009 09:36:00 GMThttp://m.shnenglu.com/franksunny/archive/2009/08/12/93044.htmlhttp://m.shnenglu.com/franksunny/comments/93044.htmlhttp://m.shnenglu.com/franksunny/archive/2009/08/12/93044.html#Feedback0http://m.shnenglu.com/franksunny/comments/commentRss/93044.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/93044.html 鍏堝0鏄庝竴涓嬶紝涓嬮潰鐨勮繖孌典唬鐮佹槸璋冪敤緋葷粺鐨勬祻瑙堝櫒瀹炵幇緗戦〉嫻忚鐨勫姛鑳斤紝寰堟樉鐒惰繖鏄竴縐嶆瘮杈冪畝鍗曠殑鏂規硶錛屼絾鏄畠鐨勫彲鎺у埗鎬у氨涓嶈浜嗭紝渚嬪宸﹁蔣閿殑鍐呭浣犳槸鑲畾璇ヤ笉浜嗙殑銆傚浣曞啓涓涓嚜宸辯殑嫻忚鍣紝鑰屼笉璋冪敤緋葷粺鐨勶紝絳変互鍚庡仛鍑烘潵鍐嶈鍚с?/span>

璋冪敤緋葷粺鐨勬祻瑙堝櫒鏉ュ疄鐜扮綉欏墊祻瑙堝彲浠ユ牴鎹郴緇熸祻瑙堝櫒鐨勭姸鎬佽屽喅瀹氳皟鐢ㄧ殑鏂規硶錛屼緥濡傚綋緋葷粺嫻忚鍣ㄦ鍦ㄤ嬌鐢ㄧ殑鏃跺欏彲浠ョ敤TApaTask::SendMessage ()鏂規硶錛涘綋緋葷粺嫻忚鍣ㄦ病鏈夎浣跨敤鐨勬椂鍊欏彲浠ョ敤RapaLsSession::StartDocument() 鏂規硶銆?/span>

涓嬮潰鏄疄鐜頒唬鐮侊細

TBool CinternetAppUi::ConnectL(const TDesC& addr)

{

 const TInt KBrowserUid = 0x10008D39;

 TUid id( TUid::Uid( KBrowserUid ) );

 TApaTaskList taskList( CEikonEnv::Static()->WsSession() );

 TApaTask task = taskList.FindApp( id );

 // the system browser is in use

 if ( task.Exists() )

    {

    HBufC8* param8 = HBufC8::NewLC( addr.Length() );

    param8->Des().Append( addr );

    task.SendMessage( TUid::Uid( 0 ), *param8 ); // Uid is not used

    CleanupStack::PopAndDestroy();

    }

 // the system browser is not in use

else

 {

  RApaLsSession   appArcSession;

  User::LeaveIfError(appArcSession.Connect());    // connect to AppArc server

  TThreadId id;

  appArcSession.StartDocument( addr, TUid::Uid( KBrowserUid ), id );

  appArcSession.Close();

 }

 return ETrue;

}

//鍏朵腑鍏ュ彛鍙傛暟addr鐨勬牸寮忔槸4”+” <Space>“+”<Url>”錛屼緥濡?/span>“4  www.google.com銆?/span>

 

鍏朵腑閲囩敤浠ヤ笂鏂規硶涓嶄粎浠呭彲浠ョ敤浜庡紑鍚綉欏碉紝榪樺彲浠ョ敤浜庡惎鍔ㄥ畨瑁?/span>sis/sisx錛屽叿浣撶ず渚嬩唬鐮佸涓嬶細

RApaLsSession installSession;

TThreadId threadId;

TUid uid;

uid.iUid = 0x101F875A;

installSession.Connect();

installSession.StartDocument(aFileName, uid, threadId);

installSession.Close();

璇ヤ唬鐮佽嚜宸辨病鏈変翰嫻嬭繃錛屼絾鏄粠鐞嗚涓婅搴旇鍙錛岃屼笖鏈夊ぇ鐗涜uid閮戒笉鐢ㄤ紶榪涘幓銆?/span>

鍙﹀鎾斁闊充箰鏂囦歡錛岀綉涓婁篃璇村彲浠ラ氳繃璇ユ柟娉曟潵瀹炵幇錛?/span>Uid鍒嗗埆濡備笅錛?/span>

0x102072c3 (from S60 3rd Edition onwards)

0x6c5b9d2 (S60 2nd Edition)

RapaLsSession::StartDocument()鍔熻兘榪樻槸寰堝己澶х殑錛屽湪榪欓噷鍙仛鎽樺綍錛屼互鍚庢湁鏈轟細鍐嶄翰嫻嬶紝涓嶈繃鐢ㄥ叾鎵撳紑緗戦〉鐨勭‘鍙銆?br>

 

 

 

 

 



]]>
[鏁寸悊]铏氭嫙緇ф壙鍏ラ棬http://m.shnenglu.com/franksunny/archive/2008/10/16/64168.htmlfrank.sunnyfrank.sunnyThu, 16 Oct 2008 08:55:00 GMThttp://m.shnenglu.com/franksunny/archive/2008/10/16/64168.htmlhttp://m.shnenglu.com/franksunny/comments/64168.htmlhttp://m.shnenglu.com/franksunny/archive/2008/10/16/64168.html#Feedback6http://m.shnenglu.com/franksunny/comments/commentRss/64168.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/64168.html榪欐澶變笟涔嬪悗錛岀獊鐒跺彂鐜扮幇鍦ㄥ伐浣滃ソ鍍忕湡鐨勪笉鏄緢濂芥壘錛屾病鍔炴硶錛屼富鍔ㄦ潈涓嶅湪鑷繁鎵嬮噷錛岄潤涓嬪績鏉ユ兂鎯沖氨褰撻氳繃絎旇瘯鏉ョ粰鑷繁鏌ユ紡琛ョ己鍚э紝鏄ㄥぉ絎旇瘯閬囧埌涓涓櫄鎷熺戶鎵跨殑姒傚康錛岃繖涓嶈櫧璇?/span>2鍒嗙殑棰橈紝浣嗘槸榪欎釜鐜╂剰鏈夊ぇ鍐呭錛屾垜瀛︿範浜嗕笅錛屼篃灝卞厛鏁翠釜鍏ラ棬鍑烘潵鍚э細

 

涓轟粈涔堣寮曞叆铏氭嫙緇ф壙錛?/span>

铏氭嫙緇ф壙鍦ㄤ竴鑸殑搴旂敤涓緢灝戠敤鍒幫紝鎵浠ヤ篃寰寰琚拷瑙嗭紝榪欎篃涓昏鏄洜涓哄湪C++涓紝澶氶噸緇ф壙鏄笉鎺ㄨ崘鐨勶紝涔熷茍涓嶅父鐢紝鑰屼竴鏃︾寮浜嗗閲嶇戶鎵匡紝铏氭嫙緇ф壙灝卞畬鍏ㄥけ鍘諱簡瀛樺湪鐨勫繀瑕侊紙鍥犱負榪欐牱鍙細闄嶄綆鏁堢巼鍜屽崰鐢ㄦ洿澶氱殑絀洪棿錛屽叧浜庤繖涓鐐癸紝鎴戣嚜宸辮繕娌℃湁澶娣卞埢鐨勭悊瑙o紝鏈夊叴瓚g殑鍙互鐪嬬綉緇滀笂鐧芥潹鐨勪綔鍝?/span>銆?/span>RTTI銆佽櫄鍑芥暟鍜岃櫄鍩?span lang=EN-US>綾葷殑寮閿鍒嗘瀽鍙婁嬌鐢ㄦ寚瀵?span lang=EN-US>銆?/span>錛岃瀹炶瘽鎴戠洰鍓嶈繕娌$湅寰楀緢鏄庣櫧錛岄珮浜哄彲浠ユ寚鐐逛笅鎴戯級銆?/span>

浠ヤ笅闈㈢殑涓涓緥瀛愪負渚嬶細

#include <iostream.h>

#include <memory.h>

class CA

{

    int k; //濡傛灉鍩虹被娌℃湁鏁版嵁鎴愬憳錛屽垯鍦ㄨ繖閲屽閲嶇戶鎵跨紪璇戜笉浼氬嚭鐜頒簩涔夋?/span>

public:

    void f() {cout << "CA::f" << endl;}

};

 

class CB : public CA

{

};

 

class CC : public CA

{

};

 

class CD : public CB, public CC

{

};

 

void main()

{

    CD d;

    d.f();

}

褰撶紪璇戜笂榪頒唬鐮佹椂錛屾垜浠細鏀跺埌濡備笅鐨勯敊璇彁紺猴細

error C2385: 'CD::f' is ambiguous

鍗崇紪璇戝櫒鏃犳硶紜畾浣犲湪d.f()涓璋冪敤鐨勫嚱鏁?/span>f鍒板簳鏄摢涓涓傝繖閲屽彲鑳戒細璁╀漢瑙夊緱鏈変簺濂囨紝鍛藉悕鍙畾涔変簡涓涓?/span>CA::f錛屾棦鐒跺ぇ瀹墮兘媧劇敓鑷?/span>CA錛岄偅鑷劧灝辨槸璋冪敤鐨?/span>CA::f錛屼負浠涔堣繕鏃犳硶紜畾鍛紵

榪欐槸鍥犱負緙栬瘧鍣ㄥ湪榪涜緙栬瘧鐨勬椂鍊欙紝闇瑕佺‘瀹氬瓙綾葷殑鍑芥暟瀹氫箟錛屽CA::f鏄‘瀹氱殑錛岄偅涔堝湪緙栬瘧CB銆?/span>CC鏃惰繕闇瑕佸湪緙栬瘧鍣ㄧ殑璇硶鏍戜腑鐢熸垚CB::f錛?/span>CC::f絳夋爣璇嗭紝閭d箞錛屽湪緙栬瘧CD鐨勬椂鍊欙紝鐢變簬CB銆?/span>CC閮芥湁涓涓嚱鏁?/span>f錛屾鏃訛紝緙栬瘧鍣ㄥ皢璇曞浘鐢熸垚榪欎袱涓?/span>CD::f鏍囪瘑錛屾樉鐒惰繖鏃跺氨瑕佹姤閿欎簡銆傦紙褰撴垜浠笉浣跨敤CD::f鐨勬椂鍊欙紝浠ヤ笂鏍囪瘑閮戒笉浼氱敓鎴愶紝鎵浠ワ紝濡傛灉鍘繪帀d.f()涓鍙ワ紝紼嬪簭灝嗛『鍒╅氳繃緙栬瘧錛?/span>

 

瑕佽В鍐寵繖涓棶棰橈紝鏈変袱涓柟娉曪細

1銆侀噸杞藉嚱鏁?/span>f()錛氭鏃剁敱浜庢垜浠槑紜畾涔変簡CD::f錛岀紪璇戝櫒媯鏌ュ埌CD::f()璋冪敤鏃跺氨鏃犻渶鍐嶅儚涓婇潰涓鏍峰幓閫愮駭鐢熸垚CD::f鏍囪瘑浜嗭紱

姝ゆ椂CD鐨勫厓绱犵粨鏋勫涓嬶細

|CB(CA)|

|CC(CA)|

鏁呮鏃剁殑sizeof(CD) = 8;錛?/span>CB銆?/span>CC鍚勬湁涓涓厓绱?/span>k錛?/span>

2銆佷嬌鐢ㄨ櫄鎷熺戶鎵匡細铏氭嫙緇ф壙鍙堢О浣滃叡浜戶鎵匡紝榪欑鍏變韓鍏跺疄涔熸槸緙栬瘧鏈熼棿瀹炵幇鐨勶紝褰撲嬌鐢ㄨ櫄鎷熺戶鎵挎椂錛屼笂闈㈢殑紼嬪簭灝嗗彉鎴愪笅闈㈢殑褰㈠紡錛?/span>

#include <iostream.h>

#include <memory.h>

class CA

{

    int k;

public:

    void f() {cout << "CA::f" << endl;}

};

 

class CB : virtual public CA  //涔熸湁涓縐嶅啓娉曟槸class CB : public virtual CA

{                       //瀹為檯涓婅繖涓ょ鏂規硶閮藉彲浠?/span>

};

 

class CC : virtual public CA

{

};

 

class CD : public CB, public CC

{

};

 

void main()

{

    CD d;

    d.f();

}

姝ゆ椂錛屽綋緙栬瘧鍣ㄧ‘瀹?/span>d.f()璋冪敤鐨勫叿浣撳惈涔夋椂錛屽皢鐢熸垚濡備笅鐨?/span>CD緇撴瀯錛?/span>

|CB|

|CC|

|CA|

鍚屾椂錛屽湪CB銆?/span>CC涓兘鍒嗗埆鍖呭惈浜嗕竴涓寚鍚?/span>CA鐨勮櫄鍩虹被鎸囬拡鍒楄〃vbptr錛?/span>virtual base table pointer錛夛紝鍏朵腑璁板綍鐨勬槸浠?/span>CB銆?/span>CC鐨勫厓绱犲埌CA鐨勫厓绱犱箣闂寸殑鍋忕Щ閲忋傛鏃訛紝涓嶄細鐢熸垚鍚勫瓙綾葷殑鍑芥暟f鏍囪瘑錛岄櫎闈炲瓙綾婚噸杞戒簡璇ュ嚱鏁幫紝浠庤岃揪鍒?#8220;鍏變韓”鐨勭洰鐨勶紙榪欓噷鐨勫叿浣撳唴瀛樺竷灞錛屽彲浠ュ弬鐪嬮捇鐭沖瀷緇ф壙鍐呭瓨甯冨眬錛屽湪鐧芥潹鐨勯偅綃囨枃绔犱腑涔熸湁錛夈?/span>

涔熸鍥犳錛屾鏃剁殑sizeof(CD) = 12錛堜袱涓?/span>vbptr + sizoef(int)錛?/span>;

 

鍙︽敞錛?/span>

濡傛灉CB錛?/span>CC涓悇瀹氫箟涓涓?/span>int鍨嬪彉閲忥紝鍒?/span>sizeof(CD)灝卞彉鎴?/span>20(涓や釜vbptr + 3涓?/span>sizoef(int)

濡傛灉CA涓坊鍔犱竴涓?/span>virtual void f1(){}錛?/span>sizeof(CD) = 16錛堜袱涓?/span>vbptr + sizoef(int)+vptr錛?/span>;

鍐嶆坊鍔?/span>virtual void f2(){}錛?/span>sizeof(CD) = 16涓嶅彉銆傚師鍥犲涓嬫墍紺猴細甯︽湁铏氬嚱鏁扮殑綾伙紝鍏跺唴瀛樺竷灞涓婂寘鍚竴涓寚鍚戣櫄鍑芥暟鍒楄〃鐨勬寚閽堬紙vptr錛夛紝榪欒窡鏈夊嚑涓櫄鍑芥暟鏃犲叧銆?/span>

浠ヤ笂鍐呭娑夊強鍒扮被瀵硅薄鍐呭瓨甯冨眬闂錛屾湰浜鴻繕闅句互鍋氳繃澶氬睍寮錛屽厛璐磋繖涔堝錛屾湰綃囨枃绔犲彧鏄冭檻瀵逛簬铏氭嫙緇ф壙榪涜鍏ラ棬錛岃嚦浜庢晥鐜囥佸簲鐢ㄧ瓑鏈綔灞曞紑銆傛湰鏂囧湪緗戜笂鏂囩珷鍩虹涓婁慨鏀逛簡涓嬭屽緱姝ょ瘒錛屽師鏂囪澆浜?/span>http://blog.csdn.net/billdavid/archive/2004/06/23/24317.aspx

鍙﹀鍏充簬铏氱戶鎵垮拰铏氬熀綾葷殑璁ㄨ錛屽崥瀹㈠洯鏈夌瘒鏂囩珷銆?/span>铏氱戶鎵夸笌铏氬熀綾葷殑鏈川銆嬶紝鎬葷粨寰楁洿涓鴻緇嗕竴鐐廣?/span>

 

 



]]>
濡備綍鍦–++涓皟鐢–鐨勪唬鐮?/title><link>http://m.shnenglu.com/franksunny/archive/2008/10/10/63675.html</link><dc:creator>frank.sunny</dc:creator><author>frank.sunny</author><pubDate>Fri, 10 Oct 2008 09:54:00 GMT</pubDate><guid>http://m.shnenglu.com/franksunny/archive/2008/10/10/63675.html</guid><wfw:comment>http://m.shnenglu.com/franksunny/comments/63675.html</wfw:comment><comments>http://m.shnenglu.com/franksunny/archive/2008/10/10/63675.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.shnenglu.com/franksunny/comments/commentRss/63675.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/franksunny/services/trackbacks/63675.html</trackback:ping><description><![CDATA[<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">濡備綍鍦?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓皟鐢?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勪唬鐮?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠ュ墠鏇劇粡鎬葷粨榪囦竴綃?<a href="http://m.shnenglu.com/franksunny/archive/2007/11/29/37510.html">http://m.shnenglu.com/franksunny/archive/2007/11/29/37510.html</a>)錛屽叧浜庡湪</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓浣曡皟鐢?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勪唬鐮侊紝褰撴椂騫舵湭鍋氬畬鍏ㄧ殑灞曞紑錛屽彧鏄畝鍗曠殑鍋氫簡涓嬭皟璇曪紝鏈榪戠湅鍒頒竴涓鐩姹傚疄鐜?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍜?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓唬鐮佺殑浜掔浉璋冪敤錛屽叾緇撴灉铏界劧閮芥槸<span style="COLOR: red">閫氳繃</span></span><span lang=EN-US style="COLOR: red">extern “C”</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏉ュ疄鐜?/span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛屼絾鏄叿浣撹繕鏄湁浜涘樊鍒殑銆?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏堝</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓皟鐢?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠g爜浣滀釜綆鍗曞洖欏撅細</span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 57.75pt; TEXT-INDENT: -36.75pt; mso-list: l0 level1 lfo1; tab-stops: list 57.75pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">1銆?span style="FONT: 7pt 'Times New Roman'">              </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">瀵逛簬</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓潪綾葷殑鎴愬憳鍑芥暟錛屽彲浠ョ畝鍗曠殑鍦?span style="COLOR: red">鍑芥暟澹版槑鍓嶉潰鍔?/span></span><span lang=EN-US style="COLOR: red">extern “C”</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛岄氬父鍑芥暟澹版槑浣嶄簬澶存枃浠朵腑錛屽綋鐒朵篃鍙互<span style="COLOR: red">灝嗗0鏄庡拰鍑芥暟瀹氫箟涓璧鋒斁鍦?/span></span><span lang=EN-US style="COLOR: red">cpp</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓?/span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛屽湪<span style="COLOR: red">娌℃湁澹版槑鐨勬儏鍐典笅錛岀洿鎺ュ湪瀹氫箟鍓嶆坊鍔?/span></span><span lang=EN-US style="COLOR: red">extern “C”</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涔熷彲</span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 57.75pt; TEXT-INDENT: -36.75pt; mso-list: l0 level1 lfo1; tab-stops: list 57.75pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">2銆?span style="FONT: 7pt 'Times New Roman'">              </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">瀵逛簬</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">綾葷殑鎴愬憳鍑芥暟錛屽垯<span style="COLOR: red">闇瑕佸彟澶栧仛涓涓?/span></span><span lang=EN-US style="COLOR: red">cpp</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏂囦歡錛屽皢闇瑕佽皟鐢ㄧ殑鍑芥暟榪涜鍖呰</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">銆?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠ヤ笂涓ら」鐨勫疄渚嬪弬鐪嬪墠闈?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓浣曡皟鐢?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠g爜鐨勬枃绔犮?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">瑕佸疄鐜?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓皟鐢?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勪唬鐮侊紝鍏蜂綋鎿嶄綔錛?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">瀵逛簬</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓殑鍑芥暟浠g爜錛岃涔?span style="COLOR: red">灝?/span></span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠g爜鐨勫ご鏂囦歡榪涜淇敼錛屽湪鍏惰鍚叆</span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠g爜鏃跺湪澹版槑涓姞鍏?/span><span lang=EN-US style="COLOR: red">extern “C”</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鎴栬?span style="COLOR: red">鍦?/span></span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠g爜涓噸鏂板0鏄庝竴涓?/span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍑芥暟錛岄噸鏂板0鏄庢椂娣誨姞涓?/span><span lang=EN-US style="COLOR: red">extern “C”</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">澶?/span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">銆?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">閫氳繃浠ヤ笂鐨勮鏄庯紝鎴戞槑鐧戒竴鐐癸紝閭e氨鏄?span style="COLOR: red">鍔?/span></span><span lang=EN-US style="COLOR: red">extern “C”</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">澶翠竴瀹氭槸鍔犲湪</span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勪唬鐮佹枃浠朵腑鎵嶈兘璧蜂綔鐢ㄧ殑</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">銆?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓嬮潰鍒嗘瀽涓涓嬭繖涓幇璞$殑瀹炶川鍘熷洜錛?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧鍣ㄧ紪璇戝嚱鏁版椂涓嶅甫鍑芥暟鐨勭被鍨嬩俊鎭紝鍙寘鍚嚱鏁扮鍙峰悕瀛楋紝濡?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧鍣ㄦ妸鍑芥暟</span><span lang=EN-US>int a(float x)</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧鎴愮被浼?/span><span lang=EN-US>_a</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">榪欐牱鐨勭鍙鳳紝</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">榪炴帴鍣ㄥ彧瑕佹壘鍒頒簡璋冪敤鍑芥暟鐨勭鍙鳳紝灝卞彲浠ヨ繛鎺ユ垚鍔燂紝瀹冨亣璁懼弬鏁扮被鍨嬩俊鎭槸姝g‘鐨勶紝榪欐槸</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧榪炴帴鍣ㄧ殑緙虹偣銆傝?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧鍣ㄤ負浜嗗疄鐜板嚱鏁伴噸杞斤紝緙栬瘧鏃朵細甯︿笂鍑芥暟鐨勭被鍨嬩俊鎭紝濡備粬鎶婁笂闈㈢殑</span><span lang=EN-US>a</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍑芥暟鍙兘緙栬瘧鎴?/span><span lang=EN-US>_a_float</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">榪欐牱鐨勭鍙蜂負浜嗗疄鐜伴噸杞斤紝娉ㄦ剰瀹冭繕鏄病鏈夊甫榪斿洖鍊煎緱淇℃伅錛岃繖涔熸槸涓轟粈涔?/span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓嶆敮鎸侀噰鐢ㄥ嚱鏁拌繑鍥炲兼潵鍖哄埆鍑芥暟閲嶈澆鐨勫師鍥犱箣涓錛屽綋鐒訛紝鍑芥暟鐨勪嬌鐢ㄨ呭鍑芥暟榪斿洖鍊肩殑澶勭悊鏂瑰紡錛堝蹇界暐錛変篃鏄噸瑕佸師鍥犮?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍩轟簬浠ヤ笂錛?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璋冪敤</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛岄鍏堥渶瑕佺敤灝佽鍑芥暟鎶婂</span><span lang=EN-US>C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勭被絳夌殑璋冪敤灝佽鎴?/span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍑芥暟浠ヤ究</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璋冪敤錛屼簬鏄?/span><span lang=EN-US>extern "C"</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勪綔鐢ㄦ槸錛氳緙栬瘧鍣ㄧ煡閬撹繖浠朵簨錛岀劧鍚?span style="COLOR: red">浠?/span></span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璇█鐨勬柟寮忕紪璇戝拰榪炴帴灝佽鍑芥暟</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛?span style="COLOR: red">閫氬父鏄妸灝佽鍑芥暟鐢?/span></span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧鍣ㄦ寜</span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏂瑰紡緙栬瘧錛岀敤浜?/span><span lang=EN-US style="COLOR: red">extern "C" </span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍚庯紝緙栬瘧鍣ㄤ究渚?/span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勬柟寮忕紪璇戝皝瑁呮帴鍙o紝褰撶劧鎺ュ彛鍑芥暟閲岄潰鐨?/span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璇硶榪樻槸鎸?/span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏂瑰紡緙栬瘧錛涘浜?/span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璇█閮ㄥ垎</span><span lang=EN-US style="COLOR: red">--</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璋冪敤鑰咃紝榪樻槸鎸?/span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璇█緙栬瘧錛涘垎鍒</span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鎺ュ彛閮ㄥ垎鍜?/span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">閮ㄥ垎緙栬瘧鍚庯紝鍐嶈繛鎺ュ氨鍙互瀹炵幇</span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璋冪敤</span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浜?/span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛夈傜浉鍙?/span><span lang=EN-US>,C++</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">璋冪敤</span><span lang=EN-US>C</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍑芥暟錛?/span><span lang=EN-US>extern "C" </span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勪綔鐢ㄦ槸錛氳</span><span lang=EN-US style="COLOR: red">C++</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">榪炴帴鍣ㄦ壘璋冪敤鍑芥暟鐨勭鍙鋒椂閲囩敤</span><span lang=EN-US style="COLOR: red">C</span><span style="COLOR: red; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勬柟寮?/span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛屽嵆浣跨敤</span><span lang=EN-US>_a</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鑰屼笉鏄?/span><span lang=EN-US>_a_float</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏉ユ壘璋冪敤鍑芥暟銆?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏蜂綋紺轟緥璇瘋</span><span lang=EN-US><a href="http://m.shnenglu.com/Files/franksunny/CCallCpp.rar"><u><font color=#0000ff>http://m.shnenglu.com/Files/franksunny/CCallCpp.rar</font></u></a></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">娉細濡傛灉浣犵敤</span><span lang=EN-US>VC6.0</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧闄勪歡鏃墮亣鍒扮被浼?/span><span lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">“fatal error C1010: unexpected end of file while looking for precompiled header directive”</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">鎶ラ敊鐨勮瘽錛岃灝?/span><span lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">bb.c</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">鏂囦歡鍋氬涓嬪鐞嗗彸閿偣鍑婚」鐩伐紼嬩腑鐨勮鏂囦歡錛岄夋嫨</span><span lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">setting</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">錛屽湪</span><span lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">c/c++</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">鏍忥紝閫夋嫨</span><span lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial">PreCompiled headers</span><span style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-bidi-font-family: Arial">錛岀劧鍚庤緗涓閫夐」錛岄夋嫨涓嶄嬌鐢ㄩ緙栬瘧澶淬?/span><span lang=EN-US style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"><o:p></o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US><o:p> </o:p></span></p> <img src ="http://m.shnenglu.com/franksunny/aggbug/63675.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/franksunny/" target="_blank">frank.sunny</a> 2008-10-10 17:54 <a href="http://m.shnenglu.com/franksunny/archive/2008/10/10/63675.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C++澶氭佺殑瀹炵幇錛堢涓嬈℃帴鍒伴潰璇曠數璇濓紝姹楅涓涓嬶級http://m.shnenglu.com/franksunny/archive/2008/05/19/50424.htmlfrank.sunnyfrank.sunnyMon, 19 May 2008 12:30:00 GMThttp://m.shnenglu.com/franksunny/archive/2008/05/19/50424.htmlhttp://m.shnenglu.com/franksunny/comments/50424.htmlhttp://m.shnenglu.com/franksunny/archive/2008/05/19/50424.html#Feedback8http://m.shnenglu.com/franksunny/comments/commentRss/50424.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/50424.html 

浠婂ぉ鎺ュ埌鐢佃瘽闈㈣瘯錛岃闂埌鍑犱釜闂錛屾睏棰滀箣浣欙紝灝忕粨涓涓?/span>

1銆?span style="FONT: 7pt 'Times New Roman'">      澶氭佹槸濡備綍瀹炵幇緇戝畾鐨?/span>

澶氭佺殑緇戝畾鍙互鍒嗕負榪愯鏄鎬佸拰緙栬瘧鏃跺鎬?/span>

鈼?/span> 緙栬瘧鏃剁殑澶氭佹?/span>

緙栬瘧鏃剁殑澶氭佹ф槸閫氳繃閲嶈澆鏉ュ疄鐜扮殑銆傚浜庨潪铏氱殑鎴愬憳鏉ヨ錛岀郴緇熷湪緙栬瘧鏃訛紝鏍規嵁浼犻掔殑鍙傛暟銆佽繑鍥炵殑綾誨瀷絳変俊鎭喅瀹氬疄鐜頒綍縐嶆搷浣溿?/span>

鈼?/span> 榪愯鏃剁殑澶氭佹?/span>

榪愯鏃剁殑澶氭佹у氨鏄寚鐩村埌緋葷粺榪愯鏃訛紝鎵嶆牴鎹疄闄呮儏鍐靛喅瀹氬疄鐜頒綍縐嶆搷浣溿?/span>C#涓紝榪愯鏃剁殑澶氭佹ч氳繃铏氭垚鍛樺疄鐜般?/span>

緙栬瘧鏃剁殑澶氭佹т負鎴戜滑鎻愪緵浜嗚繍琛岄熷害蹇殑鐗圭偣錛岃岃繍琛屾椂鐨勫鎬佹у垯甯︽潵浜嗛珮搴︾伒媧誨拰鎶借薄鐨勭壒鐐廣?/span>

浠婂ぉ鎵嶆寮忓紕娓呮鍘熸潵铏氬嚱鏁版槸鍙互瀹炵幇榪愯鏃跺鎬佺殑錛屼互鍓嶅彧鐭ラ亾铏氬嚱鏁板彲浠ヤ嬌寰楀熀綾誨璞$殑鐨勬柟娉曡皟鐢ㄦ淳鐢熺被鐨勬柟娉曘?/span>

2銆?span style="FONT: 7pt 'Times New Roman'">      鏋愭瀯鍑芥暟鏄櫄鍑芥暟鐨勪紭鐐規槸浠涔?/span>

鐢?/span>C++寮鍙戠殑鏃跺欙紝鐢ㄦ潵鍋氬熀綾葷殑綾葷殑鏋愭瀯鍑芥暟涓鑸兘鏄櫄鍑芥暟銆傚彲鏄紝涓轟粈涔堣榪欐牱鍋氬憿錛熶笅闈㈢敤涓涓皬渚嬪瓙鏉ヨ鏄庯細

鏈変笅闈㈢殑涓や釜綾伙細

class ClxBase

{

public:

    ClxBase() {};

    virtual ~ClxBase() {};

 

    virtual void DoSomething() { cout << "Do something in class ClxBase!" << endl; };

};

 

class ClxDerived : public ClxBase

{

public:

    ClxDerived() {};

    ~ClxDerived() { cout << "Output from the destructor of class ClxDerived!" << endl; };

 

    void DoSomething() { cout << "Do something in class ClxDerived!" << endl; };

};

 

浠g爜

 

ClxBase *pTest = new ClxDerived;

pTest->DoSomething();

delete pTest;

 

杈撳嚭緇撴灉鏄細

 

Do something in class ClxDerived!

Output from the destructor of class ClxDerived!

 

榪欎釜寰堢畝鍗曪紝闈炲父濂界悊瑙c?/span>

浣嗘槸錛屽鏋滄妸綾?/span>ClxBase鏋愭瀯鍑芥暟鍓嶇殑virtual鍘繪帀錛岄偅杈撳嚭緇撴灉灝辨槸涓嬮潰鐨勬牱瀛愪簡錛?/span>

Do something in class ClxDerived!

涔熷氨鏄錛岀被ClxDerived鐨勬瀽鏋勫嚱鏁版牴鏈病鏈夎璋冪敤錛佷竴鑸儏鍐典笅綾葷殑鏋愭瀯鍑芥暟閲岄潰閮芥槸閲婃斁鍐呭瓨璧勬簮錛岃屾瀽鏋勫嚱鏁頒笉琚皟鐢ㄧ殑璇濆氨浼氶犳垚鍐呭瓨娉勬紡銆傛垜鎯蟲墍鏈夌殑C++紼嬪簭鍛橀兘鐭ラ亾榪欐牱鐨勫嵄闄╂с傚綋鐒訛紝濡傛灉鍦ㄦ瀽鏋勫嚱鏁頒腑鍋氫簡鍏朵粬宸ヤ綔鐨勮瘽錛岄偅浣犵殑鎵鏈夊姫鍔涗篃閮芥槸鐧借垂鍔涙皵銆?/span>

鎵浠ワ紝鏂囩珷寮澶寸殑閭d釜闂鐨勭瓟妗堝氨鏄紞錛嶈繖鏍峰仛鏄負浜嗗綋鐢ㄤ竴涓熀綾葷殑鎸囬拡鍒犻櫎涓涓淳鐢熺被鐨勫璞℃椂錛屾淳鐢熺被鐨勬瀽鏋勫嚱鏁頒細琚皟鐢ㄣ?/span>

褰撶劧錛屽茍涓嶆槸瑕佹妸鎵鏈夌被鐨勬瀽鏋勫嚱鏁伴兘鍐欐垚铏氬嚱鏁般傚洜涓哄綋綾婚噷闈㈡湁铏氬嚱鏁扮殑鏃跺欙紝緙栬瘧鍣ㄤ細緇欑被娣誨姞涓涓櫄鍑芥暟琛紝閲岄潰鏉ュ瓨鏀捐櫄鍑芥暟鎸囬拡錛岃繖鏍峰氨浼氬鍔犵被鐨勫瓨鍌ㄧ┖闂淬傛墍浠ワ紝鍙湁褰撲竴涓被琚敤鏉ヤ綔涓哄熀綾葷殑鏃跺欙紝鎵嶆妸鏋愭瀯鍑芥暟鍐欐垚铏氬嚱鏁般?/span>

 

璇村疄璇濓紝榪欎釜涔熸槸浠婂ぉ鎵嶆繁鍒昏璇嗗埌鐨勩?/span>

 

褰撶劧榪橀棶鍒板緢澶氭暟鎹粨鏋勫拰綆楁硶鏂歸潰錛堢┖闂村鏉傚害鍜屾椂闂村鏉傚害涔嬬被鐨勪笢涓滐紝璇寸湡鐨勪篃鏄熀紜鎬х殑錛夌殑闂錛岃嚦浜庨偅浜涗笢瑗匡紝鑷繁璇村疄璇濇姏寮娌$敤浠栦滑宸茬粡寰堥暱鏃墮棿浜嗭紝鐪熷彲浠ヨ蹇樼殑宸笉澶氫簡錛岃冭繖縐嶇湡鐨勫緢鎬曪紝涔熸鉤鏃舵病鎬庝箞鐢ㄥ埌銆備笉鐭ラ亾澶у鐢ㄧ殑澶氫笉錛?/span>

濂戒箙娌℃湁姝e紡鍙傚姞榪囬潰璇曚簡錛屼粖澶╃獊鐒舵潵涓嬈¤寰楄嚜宸卞熀紜榪樻槸涓嶅鎵庡疄銆?/span>



frank.sunny 2008-05-19 20:30 鍙戣〃璇勮
]]>
C涓浣曡皟鐢–++鍑芥暟http://m.shnenglu.com/franksunny/archive/2007/11/29/37510.htmlfrank.sunnyfrank.sunnyThu, 29 Nov 2007 12:38:00 GMThttp://m.shnenglu.com/franksunny/archive/2007/11/29/37510.htmlhttp://m.shnenglu.com/franksunny/comments/37510.htmlhttp://m.shnenglu.com/franksunny/archive/2007/11/29/37510.html#Feedback19http://m.shnenglu.com/franksunny/comments/commentRss/37510.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/37510.html 

C涓浣曡皟鐢?/span>C++鍑芥暟?

 

鍓嶉樀瀛愯闂強涓涓湪C涓浣曡皟鐢?/span>C++鍑芥暟鐨勯棶棰?/span>錛屽綋鏃剁畝鍗曞洖絳旀槸灝嗗嚱鏁?/span>鐢?span lang=EN-US style="COLOR: black">extern "C"澹版槑錛屽綋琚棶鍙婂浣曞皢綾誨唴鎴愬憳鍑芥暟澹版槑鏃訛紝涓鏃惰濉烇紝鍚庢潵緗戜笂鏌ヤ簡涓嬶紝緗戜笂鏈変竴緲昏瘧C++涔嬬埗鐨勬枃绔犲彲浠ヤ綔涓鴻В絳旓紝閬傛嬁鏉?span lang=EN-US>Mark涓涓嬨?span lang=EN-US>

 

灝?/span> C++ 鍑芥暟澹版槑涓?/span>``extern "C"''錛堝湪浣犵殑 C++ 浠g爜閲屽仛榪欎釜澹版槑錛夛紝鐒跺悗璋冪敤瀹冿紙鍦ㄤ綘鐨?/span> C 鎴栬?/span> C++ 浠g爜閲岃皟鐢級銆備緥濡傦細

// C++ code:

extern "C" void f(int);

void f(int i)

{

     // ...

}

 

鐒跺悗錛屼綘鍙互榪欐牱浣跨敤 f()錛?/span>

/* C code: */

void f(int);

void cc(int i)

{

    f(i);

   /* ... */

    }

 

褰撶劧錛岃繖鎷涘彧閫傜敤浜庨潪鎴愬憳鍑芥暟銆傚鏋滀綘鎯寵鍦?/span> C 閲岃皟鐢ㄦ垚鍛樺嚱鏁幫紙鍖呮嫭铏氬嚱鏁幫級錛屽垯闇瑕佹彁渚涗竴涓畝鍗曠殑鍖呰錛?/span>wrapper錛夈備緥濡傦細

// C++ code:

class C

{

       // ...

       virtual double f(int);

};

 

extern "C" double call_C_f(C* p, int i) // wrapper function

{

       return p->f(i);

}

 

鐒跺悗錛屼綘灝卞彲浠ヨ繖鏍瘋皟鐢?/span> C::f()錛?/span>

/* C code: */

double call_C_f(struct C* p, int i);

 

void ccc(struct C* p, int i)

{

       double d = call_C_f(p,i);

       /* ... */

}

 

濡傛灉浣犳兂鍦?/span> C 閲岃皟鐢ㄩ噸杞藉嚱鏁幫紝鍒欏繀欏繪彁渚涗笉鍚屽悕瀛楃殑鍖呰錛岃繖鏍鋒墠鑳借 C 浠g爜璋冪敤銆備緥濡?/span>錛?/span>

// C++ code:

void f(int);

void f(double);

 

extern "C" void f_i(int i) { f(i); }

extern "C" void f_d(double d) { f(d); }

 

鐒跺悗錛屼綘鍙互榪欐牱浣跨敤姣忎釜閲嶈澆鐨?/span> f()錛?/span>

/* C code: */

void f_i(int);

void f_d(double);

 

void cccc(int i,double d)

{

       f_i(i);

       f_d(d);

       /* ... */

}

娉ㄦ剰錛岃繖浜涙妧宸т篃閫傜敤浜庡湪 C 閲岃皟鐢?/span> C++ 綾誨簱錛屽嵆浣夸綘涓嶈兘錛堟垨鑰呬笉鎯籌級淇敼 C++ 澶存枃浠躲?/span>

 璇ョ炕璇戠殑鏂囨。Bjarne Stroustrup鐨勫師鏂囬摼鎺ュ湴鍧鏄?/span>

http://www.research.att.com/~bs/bs_faq2.html#callCpp

鏈潵璐村嚭鏉ヤ互鍚庡彈鍒板緢澶欳/C++鏈嬪弸鐨勫叧娉紝闈炲父鑽e垢錛屽湪“姊﹀湪澶╂動”鐨勬彁閱掍笅錛屾湰浜哄悗鏉ュ張瀹屾垚浜嗕竴涓狣emo宸ョ▼錛屽彂鐜板拰BJ璇寸殑鏈夌偣鍑哄叆錛屽笇鏈涙湁楂樻墜鎸囩偣錛孌emo宸ョ▼涓嬭澆閾炬帴濡備笅錛?/o:p>http://m.shnenglu.com/Files/franksunny/cCallCppDemo.rar

 

 



frank.sunny 2007-11-29 20:38 鍙戣〃璇勮
]]>
鏃犵鍙峰彉閲忓眳鐒朵篃鑳借緭鍑?1http://m.shnenglu.com/franksunny/archive/2007/10/17/34495.htmlfrank.sunnyfrank.sunnyWed, 17 Oct 2007 14:46:00 GMThttp://m.shnenglu.com/franksunny/archive/2007/10/17/34495.htmlhttp://m.shnenglu.com/franksunny/comments/34495.htmlhttp://m.shnenglu.com/franksunny/archive/2007/10/17/34495.html#Feedback13http://m.shnenglu.com/franksunny/comments/commentRss/34495.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/34495.html浠婂ぉ涓涓緢鍋剁劧鐨勬満浼氾紝闇瑕佸洖絳斾竴涓皢鏃犵鍙鋒暟鎹瓨鍒版湁絎﹀彿鍙橀噺鐨勯棶棰樸傛垜緙栫爜濡備笅錛岀粨鏋滃緢鏈夋剰鎬濓紝鎴戞槸鍦╒C6閲岃皟璇曠殑錛屾湁楂樹漢鐪嬪埌鍙惁甯繖鎸囩偣涓嬨?br>int main()
{
    unsigned short temp1 = 65535;
    short temp2 = temp1;
    unsigned short temp3 = (unsigned short)temp2;
    unsigned short temp4 = temp2;
    int temp5 = temp2;
    unsigned int temp6 = temp2;
    unsigned long temp7 = temp2;
    int temp8 = (unsigned short)temp2;
    short temp9 = temp2;
    printf("temp1 = %d\n temp2 = %d\n temp3 = %d\n temp4 = %d\n temp5 = %d\n temp6 = %d\n temp7 = %d\n temp8 = %d\n temp9 = %d\n",
     temp1,temp2,temp3,temp4, temp5,temp6,temp7,temp8,temp9);
    return 0;
}
//鏀圭▼搴忕殑杈撳嚭緇撴灉
//temp1 = 65535
//temp2 = -1
//temp3 = 65535
//temp4 = 65535
//temp5 = -1
//temp6 = -1
//temp7 = -1
//temp8 = 65535
//temp9 = -1;


//鏍規嵁緇撴灉涔熷氨鏄錛屾棤絎﹀彿絎﹀彿鏁版嵁鏄彲浠ュ瓨鍌ㄥ湪鏈夌鍙峰瀷鍙橀噺鍐呭瓨涓殑,
//鑰屼笖鏈変緥瀛愬湪鍐呭瓨鍧楅暱搴︿竴鏍鋒椂錛屼笉鐢ㄥ己杞紝鐩存帴璧嬬粰鏃犵鍙峰彉閲忔椂涔熷彲琛?br>//涓婅堪浜嬪疄鍙互瑙i噴涓哄唴瀛樺潡涓嶅彉錛岄噰鐢ㄤ笉鍚岀殑瑙g爜鏂瑰紡瑙e嚭涓嶅悓鐨勬暟鎹?br>//浣嗘槸璇誨嚭鏉ョ殑鏃跺欒娉ㄦ剰錛屽鏋滄湁絎﹀彿杞棤絎﹀彿涓瀹氳寮鴻漿
//涔嬫墍浠ヤ笂渚媢nsigned int杈撳嚭-1錛屾垜騫朵笉鏄緢娓呮



frank.sunny 2007-10-17 22:46 鍙戣〃璇勮
]]>
C++鐨剆tatic鍏抽敭瀛?杞澆)http://m.shnenglu.com/franksunny/archive/2007/10/16/34373.htmlfrank.sunnyfrank.sunnyTue, 16 Oct 2007 13:03:00 GMThttp://m.shnenglu.com/franksunny/archive/2007/10/16/34373.htmlhttp://m.shnenglu.com/franksunny/comments/34373.htmlhttp://m.shnenglu.com/franksunny/archive/2007/10/16/34373.html#Feedback2http://m.shnenglu.com/franksunny/comments/commentRss/34373.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/34373.html闃呰鍏ㄦ枃

frank.sunny 2007-10-16 21:03 鍙戣〃璇勮
]]>
Visual Assist X AutoText淇敼http://m.shnenglu.com/franksunny/archive/2007/09/14/32223.htmlfrank.sunnyfrank.sunnyFri, 14 Sep 2007 09:27:00 GMThttp://m.shnenglu.com/franksunny/archive/2007/09/14/32223.htmlhttp://m.shnenglu.com/franksunny/comments/32223.htmlhttp://m.shnenglu.com/franksunny/archive/2007/09/14/32223.html#Feedback0http://m.shnenglu.com/franksunny/comments/commentRss/32223.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/32223.html鑷粠寮濮嬬敤VC浠ュ悗錛屼竴鐩翠互鏉ラ兘鍦ㄧ敤Visual Assist錛屾劅瑙夎繖涓伐鍏風湡鐨勯潪甯稿ソ錛屼絾鏄湁浜涜嚜鍔ㄦ枃妗e姛鑳藉氨涓漢瑙夊緱騫墮潪寰堥傚悎錛屼笉榪囧彲鑳界敱浜庤嚜韜殑E鏂囨瘮杈冨樊鍚э紝浠庢潵娌℃兂榪囪嚜宸卞浣曞幓淇敼榪欎釜涓滆タ銆傛潵鏂板崟浣嶅凡緇忎袱涓ぜ鎷滀簡錛岄┈涓婂張瑕佷笅鐝簡錛屽氨鍐茬潃榪欎釜鏌ヤ簡涓嬪浣曚慨鏀笰utoText錛岀粓浜庡彂鐜頒簡瀹樼綉涓婄殑璇︾粏璇存槑錛岀幇鍦ㄧ矘甯栧湪涓嬮潰錛屼互澶囦笉鏃朵箣闇 http://www.wholetomato.com/products/features/autotext.asp

涓轟簡鏌ユ壘鏂逛究錛岃嚜宸變篃灝嗗父鐢ㄧ殑鍛戒護綺樺笘榪囨潵

Code

Type your expanded code into the Code field. Include reserved strings to expand the date, filename and more.


Reserved String Meaning
Date $DATE$ Year/month/day formatted as %04d/%02d/%02d
$DAY$ Day of month formatted as %d
$DAY_02$ Day of month formatted as %02d
$DAYNAME$ Three-character abbreviation of day
$DAYLONGNAME$ Full name of day
$MONTH$ Month formatted as %d
$MONTH_02$ Month formatted as %02d
$MONTHNAME$ Three-character abbreviation of month
$MONTHLONGNAME$ Full name of month
$YEAR$ Year formatted as %d
$YEAR_02$ Year formatted as %02d
File $FILE$ Full filename with path*
$FILE_UPPER$ Full filename with path in uppercase*
$FILE_BASE$ Filename without path or extension*
$FILE_BASE_UPPER$ Filename without path or extension in upper case*
$FILE_EXT$ Filename extension*
$FILE_EXT_UPPER$ Filename extension in upper case*
$FILE_PATH$ Path of file*
$FILE_PATH_UPPER$ Path of file in upper case*
General $clipboard$ Current clipboard
$end$ Position of caret after expansion
$selected$ Current selection**
$$ $
GUID $GUID_DEFINITION$ Generated GUID formatted for use in a definition
$GUID_STRING$ Generated GUID formatted for use in a string
$GUID_STRUCT$ Generated GUID formatted for use in a struct
(Note that all instances of GUID reserved words will use a singe generated GUID.)
Refactor $GeneratedPropertyName$ Property name generated during Encapsulate Field
$MethodArg$ One parameter of the method and its type
$MethodArgName$ One parameter of the method
$MethodArgType$ Type of one parameter of the method
$MethodBody$ Body of implementation
$MethodQualifier$ Optional qualifiers of method
$ParameterList$ Parameters separated by commas
$SymbolContext$ Context and name of method
$SymbolName$ Name of method
$SymbolPrivileges$ Access of method
$SymbolStatic$ Keyword static or blank
$SymbolType$ Return type of method
$SymbolVirtual$ Keyword virtual or blank
Time $HOUR$ Hour formatted as %d
$HOUR_02$ Hour formatted as %02d
$MINUTE$ Minute formatted as %02d
$SECOND$ Second formatted as %02d

*Reserved strings beginning with $FILE expand using the case of the current file.

**Lines with whitespace and $selected$ are omitted from expanded code if there is no selection. (This lets you define a single entry to be used with and without a selection.)

Autotext entries containing $GUID_* are available in IDL files.

Access the list of reserved strings using the context menu inside the Code field when editing Autotext.

autotextCodeInsertNew.png 

frank.sunny 2007-09-14 17:27 鍙戣〃璇勮
]]>
[杞琞閲嶅叆鍜屼笉鍙噸鍏ュ嚱鏁版蹇墊祬鏋?/title><link>http://m.shnenglu.com/franksunny/archive/2007/08/03/29269.html</link><dc:creator>frank.sunny</dc:creator><author>frank.sunny</author><pubDate>Fri, 03 Aug 2007 04:56:00 GMT</pubDate><guid>http://m.shnenglu.com/franksunny/archive/2007/08/03/29269.html</guid><wfw:comment>http://m.shnenglu.com/franksunny/comments/29269.html</wfw:comment><comments>http://m.shnenglu.com/franksunny/archive/2007/08/03/29269.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://m.shnenglu.com/franksunny/comments/commentRss/29269.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/franksunny/services/trackbacks/29269.html</trackback:ping><description><![CDATA[<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><span style="FONT-SIZE: 16pt; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍙噸鍏ュ嚱鏁頒笌涓嶅彲閲嶅叆鍑芥暟</span><span lang=EN-US style="FONT-SIZE: 16pt"><o:p></o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">涓昏鐢ㄤ簬澶氫換鍔$幆澧冧腑錛屼竴涓彲閲嶅叆鐨勫嚱鏁扮畝鍗曟潵璇村氨鏄彲浠ヨ涓柇鐨勫嚱鏁幫紝涔熷氨鏄錛屽彲浠ュ湪榪欎釜鍑芥暟鎵ц鐨勪換浣曟椂鍒諱腑鏂畠錛岃漿鍏?span lang=EN-US>OS</span>璋冨害涓嬪幓鎵ц鍙﹀涓孌典唬鐮侊紝鑰岃繑鍥炴帶鍒舵椂涓嶄細鍑虹幇浠涔堥敊璇紱鑰屼笉鍙噸鍏ョ殑鍑芥暟鐢變簬浣跨敤浜嗕竴浜涚郴緇熻祫婧愶紝姣斿鍏ㄥ眬鍙橀噺鍖猴紝涓柇鍚戦噺琛ㄧ瓑錛屾墍浠ュ畠濡傛灉琚腑鏂殑璇濓紝鍙兘浼氬嚭鐜伴棶棰橈紝榪欑被鍑芥暟鏄笉鑳借繍琛屽湪澶氫換鍔$幆澧冧笅鐨勩?span lang=EN-US><o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">涔熷彲浠ヨ繖鏍風悊瑙o紝閲嶅叆鍗寵〃紺洪噸澶嶈繘鍏ワ紝棣栧厛瀹冩剰鍛崇潃榪欎釜鍑芥暟鍙互琚腑鏂紝鍏舵鎰忓懗鐫瀹冮櫎浜嗕嬌鐢ㄨ嚜宸辨爤涓婄殑鍙橀噺浠ュ涓嶄緷璧栦簬浠諱綍鐜錛堝寘鎷?span lang=EN-US>static</span>錛夛紝榪欐牱鐨勫嚱鏁板氨鏄?span lang=EN-US>purecode</span>錛堢函浠g爜錛夊彲閲嶅叆錛屽彲浠ュ厑璁告湁璇ュ嚱鏁扮殑澶氫釜鍓湰鍦ㄨ繍琛岋紝鐢變簬瀹冧滑浣跨敤鐨勬槸鍒嗙鐨勬爤錛屾墍浠ヤ笉浼氫簰鐩稿共鎵般傚鏋滅‘瀹為渶瑕佽闂叏灞鍙橀噺錛堝寘鎷?span lang=EN-US>static</span>錛夛紝涓瀹氳娉ㄦ剰瀹炴柦浜掓枼鎵嬫銆傚彲閲嶅叆鍑芥暟鍦ㄥ茍琛岃繍琛岀幆澧冧腑闈炲父閲嶈錛屼絾鏄竴鑸涓鴻闂叏灞鍙橀噺浠樺嚭涓浜涙ц兘浠d環銆?span lang=EN-US><o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">緙栧啓鍙噸鍏ュ嚱鏁版椂錛岃嫢浣跨敤鍏ㄥ眬鍙橀噺錛屽垯搴旈氳繃鍏充腑鏂佷俊鍙烽噺錛堝嵆<span lang=EN-US>P</span>銆?span lang=EN-US>V</span>鎿嶄綔錛夌瓑鎵嬫瀵瑰叾鍔犱互淇濇姢銆?span lang=EN-US><o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt"><span style="mso-spacerun: yes"> </span></span><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">璇存槑錛氳嫢瀵規墍浣跨敤鐨勫叏灞鍙橀噺涓嶅姞浠ヤ繚鎶わ紝鍒欐鍑芥暟灝變笉鍏鋒湁鍙噸鍏ユэ紝鍗沖綋澶氫釜榪涚▼璋冪敤姝ゅ嚱鏁版椂錛屽緢鏈夊彲鑳戒嬌鏈夊叧鍏ㄥ眬鍙橀噺鍙樹負涓嶅彲鐭ョ姸鎬併?span lang=EN-US><o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt"><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">紺轟緥錛氬亣璁?span lang=EN-US>Exam</span>鏄?span lang=EN-US>int</span>鍨嬪叏灞鍙橀噺錛屽嚱鏁?span lang=EN-US>Squre_Exam</span>榪斿洖<span lang=EN-US>Exam</span>騫蟲柟鍊箋傞偅涔堝涓嬪嚱鏁頒笉鍏鋒湁鍙噸鍏ユс?span lang=EN-US><o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">unsigned int example( int para ) <o:p></o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">{<o:p></o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">    unsigned int temp;<br>        Exam = para; // </span><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">錛?span lang=EN-US>**</span>錛?span lang=EN-US><br>        temp = Square_Exam( );<br>        return temp;<br>    }<br>    </span>姝ゅ嚱鏁拌嫢琚涓繘紼嬭皟鐢ㄧ殑璇濓紝鍏剁粨鏋滃彲鑳芥槸鏈煡鐨勶紝鍥犱負褰擄紙<span lang=EN-US>**</span>錛夎鍙ュ垰鎵ц瀹屽悗錛屽彟澶栦竴涓嬌鐢ㄦ湰鍑芥暟鐨勮繘紼嬪彲鑳芥濂借嬋媧伙紝閭d箞褰撴柊嬋媧葷殑榪涚▼鎵ц鍒版鍑芥暟鏃訛紝灝嗕嬌<span lang=EN-US>Exam</span>璧嬩笌鍙︿竴涓笉鍚岀殑<span lang=EN-US>para</span>鍊鹼紝鎵浠ュ綋鎺у埗閲嶆柊鍥炲埌<span lang=EN-US>“temp = Square_Exam( )”</span>鍚庯紝璁$畻鍑虹殑<span lang=EN-US>temp</span>寰堝彲鑳戒笉鏄鎯充腑鐨勭粨鏋溿傛鍑芥暟搴斿涓嬫敼榪涖?span lang=EN-US><br><br>    unsigned int example( int para ) {<br>        unsigned int temp;<br>        [</span>鐢寵淇″彿閲忔搷浣?span lang=EN-US>] //(1)<br>        Exam = para;<br>        temp = Square_Exam( );<br>        [</span>閲婃斁淇″彿閲忔搷浣?span lang=EN-US>]<br>        return temp;<br>    }<br>    (1)</span>鑻ョ敵璇蜂笉鍒?span lang=EN-US>“</span>淇″彿閲?span lang=EN-US>”</span>錛岃鏄庡彟澶栫殑榪涚▼姝e浜庣粰<span lang=EN-US>Exam</span>璧嬪煎茍璁$畻鍏跺鉤鏂硅繃紼嬩腑錛堝嵆姝e湪浣跨敤姝や俊鍙鳳級<span lang=EN-US>,</span>鏈繘紼嬪繀欏葷瓑寰呭叾閲婃斁淇″彿鍚庯紝鎵嶅彲緇х畫鎵ц銆傝嫢鐢寵鍒頒俊鍙鳳紝鍒欏彲緇х畫鎵ц錛屼絾鍏跺畠榪涚▼蹇呴』絳夊緟鏈繘紼嬮噴鏀句俊鍙烽噺鍚庯紝鎵嶈兘鍐嶄嬌鐢ㄦ湰淇″彿銆?span lang=EN-US><br><br>    </span>淇濊瘉鍑芥暟鐨勫彲閲嶅叆鎬х殑鏂規硶錛?span lang=EN-US><br>    </span>鍦ㄥ啓鍑芥暟鏃跺欏敖閲忎嬌鐢ㄥ眬閮ㄥ彉閲忥紙渚嬪瀵勫瓨鍣ㄣ佸爢鏍堜腑鐨勫彉閲忥級錛屽浜庤浣跨敤鐨勫叏灞鍙橀噺瑕佸姞浠ヤ繚鎶わ紙濡傞噰鍙栧叧涓柇銆佷俊鍙烽噺絳夋柟娉曪級錛岃繖鏍鋒瀯鎴愮殑鍑芥暟灝變竴瀹氭槸涓涓彲閲嶅叆鐨勫嚱鏁般?span lang=EN-US><br>    VxWorks</span>涓噰鍙栫殑鍙噸鍏ョ殑鎶鏈湁錛?span lang=EN-US><br>    * </span>鍔ㄦ佸爢鏍堝彉閲忥紙鍚勫瓙鍑芥暟鏈夎嚜宸辯嫭绔嬬殑鍫嗘爤絀洪棿錛?span lang=EN-US><br>    * </span>鍙椾繚鎶ょ殑鍏ㄥ眬鍙橀噺鍜岄潤鎬佸彉閲?span lang=EN-US><br>    * </span>浠誨姟鍙橀噺<span lang=EN-US><br><br><br>--------------------------------------------------<br>    </span>鍦ㄥ疄鏃剁郴緇熺殑璁捐涓紝緇忓父浼氬嚭鐜板涓換鍔¤皟鐢ㄥ悓涓涓嚱鏁扮殑鎯呭喌銆傚鏋滆繖涓嚱鏁頒笉騫歌璁捐鎴愪負涓嶅彲閲嶅叆鐨勫嚱鏁扮殑璇濓紝閭d箞涓嶅悓浠誨姟璋冪敤榪欎釜鍑芥暟鏃跺彲鑳戒慨鏀瑰叾浠栦換鍔¤皟鐢ㄨ繖涓嚱鏁扮殑鏁版嵁錛屼粠鑰屽鑷翠笉鍙鏂欑殑鍚庢灉銆傞偅涔堜粈涔堟槸鍙噸鍏ュ嚱鏁板憿錛熸墍璋撳彲閲嶅叆鍑芥暟鏄寚涓涓彲浠ヨ澶氫釜浠誨姟璋冪敤鐨勮繃紼嬶紝浠誨姟鍦ㄨ皟鐢ㄦ椂涓嶅繀鎷呭績鏁版嵁鏄惁浼氬嚭閿欍備笉鍙噸鍏ュ嚱鏁板湪瀹炴椂緋葷粺璁捐涓瑙嗕負涓嶅畨鍏ㄥ嚱鏁般傛弧瓚充笅鍒楁潯浠剁殑鍑芥暟澶氭暟鏄笉鍙噸鍏ョ殑錛?span lang=EN-US><br>    1) </span>鍑芥暟浣撳唴浣跨敤浜嗛潤鎬佺殑鏁版嵁緇撴瀯錛?span lang=EN-US><br>    2) </span>鍑芥暟浣撳唴璋冪敤浜?span lang=EN-US>malloc()</span>鎴栬?span lang=EN-US>free()</span>鍑芥暟錛?span lang=EN-US><br>    3) </span>鍑芥暟浣撳唴璋冪敤浜嗘爣鍑?span lang=EN-US>I/O</span>鍑芥暟銆?span lang=EN-US><br><br>    </span>涓嬮潰涓句緥鍔犱互璇存槑銆?span lang=EN-US><br>    A. </span>鍙噸鍏ュ嚱鏁?span lang=EN-US><br>    void strcpy(char *lpszDest, char *lpszSrc)<o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt"><span style="mso-spacerun: yes"> </span>{<br>        while(*lpszDest++=*lpszSrc++);<br>        *dest=0;<br>    }<br><br>    B. </span><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">涓嶅彲閲嶅叆鍑芥暟<span lang=EN-US>1<br>    charcTemp;//</span>鍏ㄥ眬鍙橀噺<span lang=EN-US><br>    void SwapChar1(char *lpcX, char *lpcY)<o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt"><span style="mso-spacerun: yes"> </span>{<br>        cTemp=*lpcX;<br>        *lpcX=*lpcY;<br>        lpcY=cTemp;//</span><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">璁塊棶浜嗗叏灞鍙橀噺<span lang=EN-US><br>    }<br><br>    C. </span>涓嶅彲閲嶅叆鍑芥暟<span lang=EN-US>2<br>    void SwapChar2(char *lpcX,char *lpcY)<o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt"><span style="mso-spacerun: yes"> </span>{<br>        static char cTemp;//</span><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">闈欐佸眬閮ㄥ彉閲?span lang=EN-US><br>        cTemp=*lpcX;<br>        *lpcX=*lpcY;<br>        lpcY=cTemp;//</span>浣跨敤浜嗛潤鎬佸眬閮ㄥ彉閲?span lang=EN-US><br>    }<br><br>    </span>闂<span lang=EN-US>1</span>錛屽浣曠紪鍐欏彲閲嶅叆鐨勫嚱鏁幫紵<span lang=EN-US><br>    </span>絳旓細鍦ㄥ嚱鏁頒綋鍐呬笉璁塊棶閭d簺鍏ㄥ眬鍙橀噺錛屼笉浣跨敤闈欐佸眬閮ㄥ彉閲忥紝鍧氭寔鍙嬌鐢ㄥ眬閮ㄥ彉閲忥紝鍐欏嚭鐨勫嚱鏁板氨灝嗘槸鍙噸鍏ョ殑銆傚鏋滃繀欏昏闂叏灞鍙橀噺錛岃浣忓埄鐢ㄤ簰鏂ヤ俊鍙烽噺鏉ヤ繚鎶ゅ叏灞鍙橀噺銆?span lang=EN-US><br><br>    </span>闂<span lang=EN-US>2</span>錛屽浣曞皢涓涓笉鍙噸鍏ョ殑鍑芥暟鏀瑰啓鎴愬彲閲嶅叆鐨勫嚱鏁幫紵<span lang=EN-US><br>    </span>絳旓細鎶婁竴涓笉鍙噸鍏ュ嚱鏁板彉鎴愬彲閲嶅叆鐨勫敮涓鏂規硶鏄敤鍙噸鍏ヨ鍒欐潵閲嶅啓瀹冦傚叾瀹炲緢綆鍗曪紝鍙閬靛畧浜嗗嚑鏉″緢瀹規槗鐞嗚В鐨勮鍒欙紝閭d箞鍐欏嚭鏉ョ殑鍑芥暟灝辨槸鍙噸鍏ョ殑銆?span lang=EN-US><br>    1) </span>涓嶈浣跨敤鍏ㄥ眬鍙橀噺銆傚洜涓哄埆鐨勪唬鐮佸緢鍙兘瑕嗙洊榪欎簺鍙橀噺鍊箋?span lang=EN-US><br>    2) </span>鍦ㄥ拰紜歡鍙戠敓浜や簰鐨勬椂鍊欙紝鍒囪鎵ц綾諱技<span lang=EN-US>disinterrupt()</span>涔嬬被鐨勬搷浣滐紝灝辨槸鍏抽棴紜歡涓柇銆傚畬鎴愪氦浜掕寰楁墦寮涓柇錛屽湪鏈変簺緋誨垪涓婏紝榪欏彨鍋?span lang=EN-US>“</span>榪涘叆<span lang=EN-US>/</span>閫鍑烘牳蹇?span lang=EN-US>”</span>銆?span lang=EN-US><br>    3) </span>涓嶈兘璋冪敤鍏跺畠浠諱綍涓嶅彲閲嶅叆鐨勫嚱鏁般?span lang=EN-US><br>    4) </span>璋ㄦ厧浣跨敤鍫嗘爤銆傛渶濂藉厛鍦ㄤ嬌鐢ㄥ墠鍏?span lang=EN-US>OS_ENTER_KERNAL</span>銆?span lang=EN-US><br><br>    </span>鍫嗘爤鎿嶄綔娑夊強鍐呭瓨鍒嗛厤錛岀◢涓嶇暀紲炲氨浼氶犳垚鐩婂嚭瀵艱嚧瑕嗙洊鍏朵粬浠誨姟鐨勬暟鎹紝鎵浠ワ紝璇瘋皚鎱庝嬌鐢ㄥ爢鏍堬紒鏈濂藉埆鐢紒寰堝榛戝紼嬪簭灝卞埄鐢ㄤ簡榪欎竴鐐逛互渚跨郴緇熸墽琛岄潪娉曚唬鐮佷粠鑰岃交鏉捐幏寰楃郴緇熸帶鍒舵潈銆傝繕鏈変竴浜涜鍒欙紝鎬諱箣錛屾椂鍒昏浣忎竴鍙ヨ瘽錛氫繚璇佷腑鏂槸瀹夊叏鐨勶紒<span lang=EN-US><br><br>    </span>瀹炰緥闂錛氭浘緇忚璁¤繃濡備笅涓涓嚱鏁幫紝鍦ㄤ唬鐮佹瑙嗙殑鏃跺欒鎻愰啋鏈?span lang=EN-US>bug</span>錛屽洜涓鴻繖涓嚱鏁版槸涓嶅彲閲嶅叆鐨勶紝涓轟粈涔堬紵<span lang=EN-US><br>    unsigned int sum_int( unsigned int base ) <o:p></o:p></span></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span lang=EN-US style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">{<br>        unsigned int index;<br>        static unsigned int sum = 0; // </span><span style="COLOR: black; FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt">娉ㄦ剰錛屾槸<span lang=EN-US>static</span>綾誨瀷<span lang=EN-US><br>        for (index = 1; index <= base; index++)<br>            sum += index;<br>        return sum;<br>    }<br><br>    </span>鍒嗘瀽錛氭墍璋撶殑鍑芥暟鏄彲閲嶅叆鐨勶紙涔熷彲浠ヨ鏄彲棰勬祴鐨勶級錛屽嵆鍙杈撳叆鏁版嵁鐩稿悓灝卞簲浜х敓鐩稿悓鐨勮緭鍑恒傝繖涓嚱鏁頒箣鎵浠ユ槸涓嶅彲棰勬祴鐨勶紝灝辨槸鍥犱負鍑芥暟涓嬌鐢ㄤ簡<span lang=EN-US>static</span>鍙橀噺錛屽洜涓?span lang=EN-US>static</span>鍙橀噺鐨勭壒寰侊紝榪欐牱鐨勫嚱鏁拌縐頒負錛氬甫<span lang=EN-US>“</span>鍐呴儴瀛樺偍鍣?span lang=EN-US>”</span>鍔熻兘鐨勭殑鍑芥暟銆傚洜姝ゅ鏋滈渶瑕佷竴涓彲閲嶅叆鐨勫嚱鏁幫紝涓瀹氳閬垮厤鍑芥暟涓嬌鐢?span lang=EN-US>static</span>鍙橀噺錛岃繖縐嶅嚱鏁頒腑鐨?span lang=EN-US>static</span>鍙橀噺錛屼嬌鐢ㄥ師鍒欐槸錛岃兘涓嶇敤灝介噺涓嶇敤銆?span lang=EN-US><br>    </span>灝嗕笂闈㈢殑鍑芥暟淇敼涓哄彲閲嶅叆鐨勫嚱鏁幫紝鍙灝嗗0鏄?span lang=EN-US>sum</span>鍙橀噺涓殑<span lang=EN-US>static</span>鍏抽敭瀛楀幓鎺夛紝鍙橀噺<span lang=EN-US>sum</span>鍗沖彉涓轟竴涓?span lang=EN-US>auto</span>綾誨瀷鐨勫彉閲忥紝鍑芥暟鍗沖彉涓轟竴涓彲閲嶅叆鐨勫嚱鏁般?span lang=EN-US><br>    </span>褰撶劧錛屾湁浜涙椂鍊欙紝鍦ㄥ嚱鏁頒腑鏄繀欏昏浣跨敤<span lang=EN-US>static</span>鍙橀噺鐨勶紝姣斿褰撴煇鍑芥暟鐨勮繑鍥炲間負鎸囬拡綾誨瀷鏃訛紝鍒欏繀欏繪槸<span lang=EN-US>static</span>鐨勫眬閮ㄥ彉閲忕殑鍦板潃浣滀負榪斿洖鍊鹼紝鑻ヤ負<span lang=EN-US>auto</span>綾誨瀷錛屽垯榪斿洖涓洪敊鎸囬拡銆?/span><span lang=EN-US style="FONT-FAMILY: 瀹嬩綋; mso-bidi-font-size: 10.5pt"><o:p></o:p></span></p> <img src ="http://m.shnenglu.com/franksunny/aggbug/29269.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/franksunny/" target="_blank">frank.sunny</a> 2007-08-03 12:56 <a href="http://m.shnenglu.com/franksunny/archive/2007/08/03/29269.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>涔熻皥鍏充簬鏃墮棿[杞澆time.h浠庡ご瀛http://m.shnenglu.com/franksunny/archive/2007/04/05/21360.htmlfrank.sunnyfrank.sunnyThu, 05 Apr 2007 15:53:00 GMThttp://m.shnenglu.com/franksunny/archive/2007/04/05/21360.htmlhttp://m.shnenglu.com/franksunny/comments/21360.htmlhttp://m.shnenglu.com/franksunny/archive/2007/04/05/21360.html#Feedback0http://m.shnenglu.com/franksunny/comments/commentRss/21360.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/21360.html涔熻皥鍏充簬鏃墮棿

鏈榪戣漿鍘繪悶浣庡眰浜涚殑鍗曠墖鏈虹▼搴忕紪紼嬶紝鍦ㄤ竴鍧?span lang=EN-US>msp430涓婅澧炲姞涓涓浗闄呮爣鍑嗘椂闂達紝鐢變簬浠ュ墠鍦?span lang=EN-US>VC涓兘鏄嬁鏉ョ敤鐨勶紝娌¢亣鍒伴棶棰橈紝涔熷氨涓嶄細鍘繪繁絀躲傚湪鍗曠墖鏈轟笂鎯崇敤鏍囧噯C閲岄潰鐨?span lang=EN-US>time錛?span lang=EN-US>time_t*錛夊嚱鏁版眰寰楃郴緇熸椂闂達紝鏈鍚庣粨鏋滃嚭涓嶆潵銆傚悗鏉ユ墠鐭ラ亾鍘熸潵浠ュ墠鏄彇寰楃殑鏄搷浣滅郴緇熺殑鏃墮棿錛屾睏姝伙紝鍗曠墖鏈烘病緋葷粺鐨勫晩錛屽笇鏈涜兘澶熷敖鏃╄鎴戞悶宓屽叆寮忓晩錛屽懙鍛點?span lang=EN-US>

鍚庢潵鑷繁寮勬槑鐧戒簡錛岃涓椂闂村鹼紝鐒跺悗鐢ㄥ崟鐗囨満鏅舵尟绱姞璁℃暟錛岃繕鏄彲浠ョ敤time.h杞繪澗瀹炵幇鏍囧噯鏃墮棿璁℃椂鐨勶紝鑰屼笖鏂逛究涓嶇敤鑰冭檻鑷繁鍘誨啓鏃墮棿杞崲鍑芥暟錛屼互涓嬫槸鍏蜂綋鐨?span lang=EN-US>time,h鐨勮瑙o紝鎴戝氨涓嶅啀灞曞紑浜嗐?span lang=EN-US>

time.h浠庡ご瀛?span lang=EN-US>

鏈枃浠庝粙緇嶅熀紜姒傚康鍏ユ墜錛屾帰璁ㄤ簡鍦?span lang=EN-US>C/C++涓鏃ユ湡鍜屾椂闂存搷浣滄墍鐢ㄥ埌鐨勬暟鎹粨鏋勫拰鍑芥暟錛屽茍瀵硅鏃躲佹椂闂寸殑鑾峰彇銆佹椂闂寸殑璁$畻鍜屾樉紺烘牸寮忕瓑鏂歸潰榪涜浜嗛槓榪般傛湰鏂囪繕閫氳繃澶ч噺鐨勫疄渚嬪悜浣犲睍紺轟簡time.h澶存枃浠朵腑澹版槑鐨勫悇縐嶅嚱鏁板拰鏁版嵁緇撴瀯鐨勮緇嗕嬌鐢ㄦ柟娉曘?span lang=EN-US>  

鍏抽敭瀛楋細UTC錛堜笘鐣屾爣鍑嗘椂闂達級錛?span lang=EN-US>Calendar Time錛堟棩鍘嗘椂闂達級錛?span lang=EN-US>epoch錛堟椂闂寸偣錛夛紝clock tick錛堟椂閽熻鏃跺崟鍏冿級  

1錛?/font>  姒傚康  

鍦?span lang=EN-US>C/C++涓紝瀵瑰瓧絎︿覆鐨勬搷浣滄湁寰堝鍊煎緱娉ㄦ剰鐨勯棶棰橈紝鍚屾牱錛?span lang=EN-US>C/C++瀵規椂闂寸殑鎿嶄綔涔熸湁璁稿鍊煎緱澶у娉ㄦ剰鐨勫湴鏂廣傛渶榪戯紝鍦ㄦ妧鏈兢涓湁寰堝緗戝弸涔熷嬈¢棶鍒拌繃C++璇█涓鏃墮棿鐨勬搷浣溿佽幏鍙栧拰鏄劇ず絳夌瓑鐨勯棶棰樸備笅闈紝鍦ㄨ繖綃囨枃绔犱腑錛岀瑪鑰呭皢涓昏浠嬬粛鍦?span lang=EN-US>C/C++涓椂闂村拰鏃ユ湡鐨勪嬌鐢ㄦ柟娉?span lang=EN-US>.  

閫氳繃瀛︿範璁稿C/C++搴擄紝浣犲彲浠ユ湁寰堝鎿嶄綔銆佷嬌鐢ㄦ椂闂寸殑鏂規硶銆備絾鍦ㄨ繖涔嬪墠浣犻渶瑕佷簡瑙d竴浜?span lang=EN-US>“鏃墮棿鍜?span lang=EN-US>“鏃ユ湡鐨勬蹇碉紝涓昏鏈変互涓嬪嚑涓細  

Coordinated Universal Time錛?span lang=EN-US>UTC錛夛細鍗忚皟涓栫晫鏃訛紝鍙堢О涓轟笘鐣屾爣鍑嗘椂闂達紝涔熷氨鏄ぇ瀹舵墍鐔熺煡鐨勬牸鏋楀▉娌繪爣鍑嗘椂闂達紙Greenwich Mean Time錛?span lang=EN-US>GMT錛夈傛瘮濡傦紝涓浗鍐呭湴鐨勬椂闂翠笌UTC鐨勬椂宸負+8錛屼篃灝辨槸UTC+8銆傜編鍥芥槸UTC-5銆?span lang=EN-US> 

Calendar Time錛氭棩鍘嗘椂闂達紝鏄敤浠庝竴涓爣鍑嗘椂闂寸偣鍒版鏃剁殑鏃墮棿緇忚繃鐨勭鏁?span lang=EN-US>”鏉ヨ〃紺虹殑鏃墮棿銆傝繖涓爣鍑嗘椂闂寸偣瀵逛笉鍚岀殑緙栬瘧鍣ㄦ潵璇翠細鏈夋墍涓嶅悓錛屼絾瀵逛竴涓紪璇戠郴緇熸潵璇達紝榪欎釜鏍囧噯鏃墮棿鐐規槸涓嶅彉鐨勶紝璇ョ紪璇戠郴緇熶腑鐨勬椂闂村搴旂殑鏃ュ巻鏃墮棿閮介氳繃璇ユ爣鍑嗘椂闂寸偣鏉ヨ 閲忥紝鎵浠ュ彲浠ヨ鏃ュ巻鏃墮棿鏄?span lang=EN-US>“鐩稿鏃墮棿錛屼絾鏄棤璁轟綘鍦ㄥ摢涓涓椂鍖猴紝鍦ㄥ悓涓鏃跺埢瀵瑰悓涓涓爣鍑嗘椂闂寸偣鏉ヨ錛屾棩鍘嗘椂闂撮兘鏄竴鏍風殑銆?span lang=EN-US>

epoch錛氭椂闂寸偣銆傛椂闂寸偣鍦ㄦ爣鍑?span lang=EN-US>C/C++涓槸涓涓暣鏁幫紝瀹冪敤姝ゆ椂鐨勬椂闂村拰鏍囧噯鏃墮棿鐐圭浉宸殑縐掓暟錛堝嵆鏃ュ巻鏃墮棿錛夋潵琛ㄧず銆?span lang=EN-US>

clock tick錛氭椂閽熻鏃跺崟鍏冿紙鑰屼笉鎶婂畠鍙仛鏃墮挓婊寸瓟嬈℃暟錛夛紝涓涓椂閽熻鏃跺崟鍏冪殑鏃墮棿闀跨煭鏄敱CPU鎺у埗鐨勩備竴涓?span lang=EN-US>clock tick涓嶆槸CPU鐨勪竴涓椂閽熷懆鏈燂紝鑰屾槸C/C++鐨勪竴涓熀鏈鏃跺崟浣嶃?span lang=EN-US>

鎴戜滑鍙互浣跨敤ANSI鏍囧噯搴撲腑鐨?span lang=EN-US>time.h澶存枃浠躲傝繖涓ご鏂囦歡涓畾涔夌殑鏃墮棿鍜屾棩鏈熸墍浣跨敤鐨勬柟娉曪紝鏃犺鏄湪緇撴瀯瀹氫箟錛岃繕鏄懡鍚嶏紝閮藉叿鏈夋槑鏄劇殑C璇█椋庢牸銆備笅闈紝鎴戝皢璇存槑鍦?span lang=EN-US>C/C++涓庢牱浣跨敤鏃ユ湡鐨勬椂闂村姛鑳姐?span lang=EN-US>  

2錛?璁℃椂  

C/C++涓殑璁℃椂鍑芥暟鏄?span lang=EN-US>clock()錛岃屼笌鍏剁浉鍏崇殑鏁版嵁綾誨瀷鏄?span lang=EN-US>clock_t銆傚湪MSDN涓紝鏌ュ緱瀵?span lang=EN-US>clock鍑芥暟瀹氫箟濡備笅錛?span lang=EN-US>  

clock_t clock( void );  

榪欎釜鍑芥暟榪斿洖浠?span lang=EN-US>“寮鍚繖涓▼搴忚繘紼?span lang=EN-US>”鍒?span lang=EN-US>“紼嬪簭涓皟鐢?span lang=EN-US>clock()鍑芥暟鏃朵箣闂寸殑CPU鏃墮挓璁℃椂鍗曞厓錛?span lang=EN-US>clock tick錛夋暟錛屽湪MSDN涓О涔嬩負鎸傞挓鏃墮棿錛?span lang=EN-US>wal-clock錛夈傚叾涓?span lang=EN-US>clock_t鏄敤鏉ヤ繚瀛樻椂闂寸殑鏁版嵁綾誨瀷錛屽湪time.h鏂囦歡涓紝鎴戜滑鍙互鎵懼埌瀵瑰畠鐨勫畾涔夛細  

#ifndef _CLOCK_T_DEFINED  
typedef long clock_t;  
#define _CLOCK_T_DEFINED  
#endif  

寰堟槑鏄撅紝clock_t鏄竴涓暱鏁村艦鏁般傚湪time.h鏂囦歡涓紝榪樺畾涔変簡涓涓父閲?span lang=EN-US>CLOCKS_PER_SEC錛屽畠鐢ㄦ潵琛ㄧず涓縐掗挓浼氭湁澶氬皯涓椂閽熻鏃跺崟鍏冿紝鍏跺畾涔夊涓嬶細

#define CLOCKS_PER_SEC ((clock_t)1000)

鍙互鐪嬪埌姣忚繃鍗冨垎涔嬩竴縐掞紙1姣錛夛紝璋冪敤clock錛堬級鍑芥暟榪斿洖鐨勫煎氨鍔?span lang=EN-US>1銆備笅闈婦涓緥瀛愶紝浣犲彲浠ヤ嬌鐢ㄥ叕寮?span lang=EN-US>clock()/CLOCKS_PER_SEC鏉ヨ綆椾竴涓繘紼嬭嚜韜殑榪愯鏃墮棿錛?span lang=EN-US>

void elapsed_time()  
{  
printf("Elapsed time:%u secs.\n",clock()/CLOCKS_PER_SEC);  
}  

褰撶劧錛屼綘涔熷彲浠ョ敤clock鍑芥暟鏉ヨ綆椾綘鐨勬満鍣ㄨ繍琛屼竴涓驚鐜垨鑰呭鐞嗗叾瀹冧簨浠跺埌搴曡姳浜嗗灝戞椂闂達細  

#include “stdio.h”  
#include “stdlib.h”  
#include “time.h”  

int main( void )  
{  
long i = 10000000L;  
clock_t start, finish;  
double duration;  
/*
嫻嬮噺涓涓簨浠舵寔緇殑鏃墮棿*/  
printf( "Time to do %ld empty loops is ", i );  
start = clock();  
while( i-- ) ;  
finish = clock();  
duration = (double)(finish - start) / CLOCKS_PER_SEC;  
printf( "%f seconds\n", duration );
system("pause");  
}  

鍦ㄧ瑪鑰呯殑鏈哄櫒涓婏紝榪愯緇撴灉濡備笅錛?span lang=EN-US>

Time to do 10000000 empty loops is 0.03000 seconds

涓婇潰鎴戜滑鐪嬪埌鏃墮挓璁℃椂鍗曞厓鐨勯暱搴︿負1姣錛岄偅涔堣鏃剁殑綺懼害涔熶負1姣錛岄偅涔堟垜浠彲涓嶅彲浠ラ氳繃鏀瑰彉CLOCKS_PER_SEC鐨勫畾涔夛紝閫氳繃鎶婂畠瀹氫箟鐨勫ぇ涓浜涳紝浠庤屼嬌璁℃椂綺懼害鏇撮珮鍛紵閫氳繃灝濊瘯錛屼綘浼氬彂鐜拌繖鏍鋒槸涓嶈鐨勩傚湪鏍囧噯C/C++涓紝鏈灝忕殑璁℃椂鍗曚綅鏄竴姣銆?span lang=EN-US>

3錛庝笌鏃ユ湡鍜屾椂闂寸浉鍏崇殑鏁版嵁緇撴瀯  

鍦ㄦ爣鍑?span lang=EN-US>C/C++涓紝鎴戜滑鍙氳繃tm緇撴瀯鏉ヨ幏寰楁棩鏈熷拰鏃墮棿錛?span lang=EN-US>tm緇撴瀯鍦?span lang=EN-US>time.h涓殑瀹氫箟濡備笅錛?span lang=EN-US>  

#ifndef _TM_DEFINED  
struct tm {  
int tm_sec; /*
縐?span lang=EN-US> – 鍙栧煎尯闂翠負[0,59] */  
int tm_min; /*
鍒?span lang=EN-US> - 鍙栧煎尯闂翠負
[0,59] */  
int tm_hour; /*
鏃?span lang=EN-US> - 鍙栧煎尯闂翠負
[0,23] */  
int tm_mday; /*
涓涓湀涓殑鏃ユ湡 - 鍙栧煎尯闂翠負
[1,31] */  
int tm_mon; /*
鏈堜喚錛堜粠涓鏈堝紑濮嬶紝0浠h〃涓鏈堬級 - 鍙栧煎尯闂翠負
[0,11] */  
int tm_year; /*
騫翠喚錛屽叾鍊肩瓑浜庡疄闄呭勾浠藉噺鍘?/font>1900 */  
int tm_wday; /*
鏄熸湡鍙栧煎尯闂翠負[0,6]錛屽叾涓?span lang=EN-US>0浠h〃鏄熸湡澶╋紝1浠h〃鏄熸湡涓錛屼互姝ょ被鎺?/font> */  
int tm_yday; /*
浠庢瘡騫寸殑1鏈?span lang=EN-US>1鏃?/st1:chsdate>寮濮嬬殑澶╂暟鍙栧煎尯闂翠負[0,365]錛屽叾涓?span lang=EN-US>0浠h〃1鏈?span lang=EN-US>1鏃?/st1:chsdate>錛?span lang=EN-US>1浠h〃1鏈?span lang=EN-US>2鏃?/st1:chsdate>錛屼互姝ょ被鎺?/font> */  
int tm_isdst; /*
澶忎護鏃舵爣璇嗙錛屽疄琛屽浠ゆ椂鐨勬椂鍊欙紝tm_isdst涓烘銆備笉瀹炶澶忎護鏃剁殑榪涘欙紝tm_isdst涓?span lang=EN-US>0錛涗笉浜嗚В鎯呭喌鏃訛紝tm_isdst()涓鴻礋銆?/font>*/  
};  
#define _TM_DEFINED  
#endif  

ANSI C鏍囧噯縐頒嬌鐢?span lang=EN-US>tm緇撴瀯鐨勮繖縐嶆椂闂磋〃紺轟負鍒嗚В鏃墮棿(broken-down time)銆?span lang=EN-US>

鑰屾棩鍘嗘椂闂達紙Calendar Time錛夋槸閫氳繃time_t鏁版嵁綾誨瀷鏉ヨ〃紺虹殑錛岀敤time_t琛ㄧず鐨勬椂闂達紙鏃ュ巻鏃墮棿錛夋槸浠庝竴涓椂闂寸偣錛堜緥濡傦細1970騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>錛夊埌姝ゆ椂鐨勭鏁般傚湪time.h涓紝鎴戜滑涔熷彲浠ョ湅鍒?span lang=EN-US>time_t鏄竴涓暱鏁村瀷鏁幫細  

#ifndef _TIME_T_DEFINED  
typedef long time_t; /*
鏃墮棿鍊?/font> */  
#define _TIME_T_DEFINED /*
閬垮厤閲嶅瀹氫箟
time_t */  
#endif  

澶у鍙兘浼氫駭鐢熺枒闂細鏃㈢劧time_t瀹為檯涓婃槸闀挎暣鍨嬶紝鍒版湭鏉ョ殑鏌愪竴澶╋紝浠庝竴涓椂闂寸偣錛堜竴鑸槸1970騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>錛夊埌閭f椂鐨勭鏁幫紙鍗蟲棩鍘嗘椂闂達級瓚呭嚭浜嗛暱鏁村艦鎵鑳借〃紺虹殑鏁扮殑鑼冨洿鎬庝箞鍔烇紵瀵?span lang=EN-US>time_t鏁版嵁綾誨瀷鐨勫兼潵璇達紝瀹冩墍琛ㄧず鐨勬椂闂翠笉鑳芥櫄浜?st1:chsdate w:st="on" Year="2038" Month="1" Day="18" IsLunarDate="False" IsROCDate="False">2038騫?span lang=EN-US>1鏈?span lang=EN-US>18鏃?span lang=EN-US>19鏃?span lang=EN-US>14鍒?span lang=EN-US>07縐?/st1:chsdate>銆備負浜嗚兘澶熻〃紺烘洿涔呰繙鐨勬椂闂達紝涓浜涚紪璇戝櫒鍘傚晢寮曞叆浜?span lang=EN-US>64浣嶇敋鑷蟲洿闀跨殑鏁村艦鏁版潵淇濆瓨鏃ュ巻鏃墮棿銆傛瘮濡傚井杞湪Visual C++涓噰鐢ㄤ簡__time64_t鏁版嵁綾誨瀷鏉ヤ繚瀛樻棩鍘嗘椂闂達紝騫墮氳繃_time64()鍑芥暟鏉ヨ幏寰楁棩鍘嗘椂闂達紙鑰屼笉鏄氳繃浣跨敤32浣嶅瓧鐨?span lang=EN-US>time()鍑芥暟錛夛紝榪欐牱灝卞彲浠ラ氳繃璇ユ暟鎹被鍨嬩繚瀛?st1:chsdate w:st="on" Year="3001" Month="1" Day="1" IsLunarDate="False" IsROCDate="False">3001騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>錛堜笉鍖呮嫭璇ユ椂闂寸偣錛変箣鍓嶇殑鏃墮棿銆?span lang=EN-US>  

鍦?span lang=EN-US>time.h澶存枃浠朵腑錛屾垜浠繕鍙互鐪嬪埌涓浜涘嚱鏁幫紝瀹冧滑閮芥槸浠?span lang=EN-US>time_t涓哄弬鏁扮被鍨嬫垨榪斿洖鍊肩被鍨嬬殑鍑芥暟錛?span lang=EN-US>

double difftime(time_t time1, time_t time0);  

time_t mktime(struct tm * timeptr); 

time_t time(time_t * timer); 

char * asctime(const struct tm * timeptr);

char * ctime(const time_t *timer); 

姝ゅ錛?span lang=EN-US>time.h榪樻彁渚涗簡涓ょ涓嶅悓鐨勫嚱鏁板皢鏃ュ巻鏃墮棿錛堜竴涓敤time_t琛ㄧず鐨勬暣鏁幫級杞崲涓烘垜浠鉤鏃剁湅鍒扮殑鎶婂勾鏈堟棩鏃跺垎縐掑垎寮鏄劇ず鐨勬椂闂存牸寮?span lang=EN-US>tm錛?span lang=EN-US>

struct tm * gmtime(const time_t *timer); struct tm * localtime(const time_t * timer);

閫氳繃鏌ラ槄MSDN錛屾垜浠彲浠ョ煡閬?span lang=EN-US>Microsoft C/C++ 7.0涓椂闂寸偣鐨勫鹼紙time_t瀵硅薄鐨勫鹼級鏄粠1899騫?span lang=EN-US>12鏈?span lang=EN-US>31鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>鍒拌鏃墮棿鐐規墍緇忚繃鐨勭鏁幫紝鑰屽叾瀹冨悇縐嶇増鏈殑Microsoft C/C++鍜屾墍鏈変笉鍚岀増鏈殑Visual C++閮芥槸璁$畻鐨勪粠1970騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>鍒拌鏃墮棿鐐規墍緇忚繃鐨勭鏁般?span lang=EN-US>  

4錛庝笌鏃ユ湡鍜屾椂闂寸浉鍏崇殑鍑芥暟鍙婂簲鐢?span lang=EN-US>

鍦ㄦ湰鑺傦紝鎴戝皢鍚戝ぇ瀹跺睍紺烘庢牱鍒╃敤time.h涓0鏄庣殑鍑芥暟瀵規椂闂磋繘琛屾搷浣溿傝繖浜涙搷浣滃寘鎷彇褰撳墠鏃墮棿銆佽綆楁椂闂撮棿闅斻佷互涓嶅悓鐨勫艦寮忔樉紺烘椂闂寸瓑鍐呭銆?span lang=EN-US>  

4.1 鑾峰緱鏃ュ巻鏃墮棿

鎴戜滑鍙互閫氳繃time()鍑芥暟鏉ヨ幏寰楁棩鍘嗘椂闂達紙Calendar Time錛夛紝鍏跺師鍨嬩負錛?span lang=EN-US>

time_t time(time_t * timer);

濡傛灉浣犲凡緇忓0鏄庝簡鍙傛暟timer錛屼綘鍙互浠庡弬鏁?span lang=EN-US>timer榪斿洖鐜板湪鐨勬棩鍘嗘椂闂達紝鍚屾椂涔熷彲浠ラ氳繃榪斿洖鍊艱繑鍥炵幇鍦ㄧ殑鏃ュ巻鏃墮棿錛屽嵆浠庝竴涓椂闂寸偣錛堜緥濡傦細1970騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>錛夊埌鐜板湪姝ゆ椂鐨勭鏁般傚鏋滃弬鏁頒負絀猴紙NUL錛夛紝鍑芥暟灝嗗彧閫氳繃榪斿洖鍊艱繑鍥炵幇鍦ㄧ殑鏃ュ巻鏃墮棿錛屾瘮濡備笅闈㈣繖涓緥瀛愮敤鏉ユ樉紺哄綋鍓嶇殑鏃ュ巻鏃墮棿錛?span lang=EN-US>

#include "time.h"  
#include "stdio.h"  
int main(void)  
{  
struct tm *ptr;  
time_t lt;  
lt =time(NUL);  
printf("The Calendar Time now is %d\n",lt);  
return 0;  
}  

榪愯鐨勭粨鏋滀笌褰撴椂鐨勬椂闂存湁鍏籌紝鎴戝綋鏃惰繍琛岀殑緇撴灉鏄細  

The Calendar Time now is 1122707619  

鍏朵腑1122707619灝辨槸鎴戣繍琛岀▼搴忔椂鐨勬棩鍘嗘椂闂淬傚嵆浠?st1:chsdate w:st="on" Year="1970" Month="1" Day="1" IsLunarDate="False" IsROCDate="False">1970騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?span lang=EN-US>0鏃?span lang=EN-US>0鍒?span lang=EN-US>0縐?/st1:chsdate>鍒版鏃剁殑縐掓暟銆?span lang=EN-US>  

4.2 鑾峰緱鏃ユ湡鍜屾椂闂?span lang=EN-US>  

榪欓噷璇寸殑鏃ユ湡鍜屾椂闂村氨鏄垜浠鉤鏃舵墍璇寸殑騫淬佹湀銆佹棩銆佹椂銆佸垎銆佺絳変俊鎭備粠絎?span lang=EN-US>2鑺傛垜浠凡緇忕煡閬撹繖浜涗俊鎭兘淇濆瓨鍦ㄤ竴涓悕涓?span lang=EN-US>tm鐨勭粨鏋勪綋涓紝閭d箞濡備綍灝嗕竴涓棩鍘嗘椂闂翠繚瀛樹負涓涓?span lang=EN-US>tm緇撴瀯鐨勫璞″憿錛?span lang=EN-US>  

鍏朵腑鍙互浣跨敤鐨勫嚱鏁版槸gmtime()鍜?span lang=EN-US>localtime()錛岃繖涓や釜鍑芥暟鐨勫師鍨嬩負錛?span lang=EN-US>  

struct tm * gmtime(const time_t *timer);  
struct tm * localtime(const time_t * timer);  

鍏朵腑gmtime()鍑芥暟鏄皢鏃ュ巻鏃墮棿杞寲涓轟笘鐣屾爣鍑嗘椂闂達紙鍗蟲牸鏋楀凹娌繪椂闂達級錛屽茍榪斿洖涓涓?span lang=EN-US>tm緇撴瀯浣撴潵淇濆瓨榪欎釜鏃墮棿錛岃?span lang=EN-US>localtime()鍑芥暟鏄皢鏃ュ巻鏃墮棿杞寲涓烘湰鍦版椂闂淬傛瘮濡傜幇鍦ㄧ敤gmtime()鍑芥暟鑾峰緱鐨勪笘鐣屾爣鍑嗘椂闂存槸2005騫?span lang=EN-US>7鏈?span lang=EN-US>30鏃?span lang=EN-US>7鐐?span lang=EN-US>18鍒?span lang=EN-US>20縐?/st1:chsdate>錛岄偅涔堟垜鐢?span lang=EN-US>localtime()鍑芥暟鍦ㄤ腑鍥藉湴鍖鴻幏寰楃殑鏈湴鏃墮棿浼氭瘮涓栫晫鏍囧噯鏃墮棿鏅?span lang=EN-US>8涓皬鏃訛紝鍗?st1:chsdate w:st="on" Year="2005" Month="7" Day="30" IsLunarDate="False" IsROCDate="False">2005騫?span lang=EN-US>7鏈?span lang=EN-US>30鏃?span lang=EN-US>15鐐?span lang=EN-US>18鍒?span lang=EN-US>20縐?/st1:chsdate>銆備笅闈㈡槸涓緥瀛愶細  

#include "time.h"  
#include "stdio.h"  
int main(void)  
{  
struct tm *local;  
time_t t;  
t=time(NUL);  
local=localtime(&t);  
printf("Local hour is: %d\n",local->tm_hour);  
local=gmtime(&t);  
printf("UTC hour is: %d\n",local->tm_hour);  
return 0;  
}  

榪愯緇撴灉鏄細  

Local hour is: 15  
UTC hour is: 7  

4.3 鍥哄畾鐨勬椂闂存牸寮?span lang=EN-US>  

鎴戜滑鍙互閫氳繃asctime()鍑芥暟鍜?span lang=EN-US>ctime()鍑芥暟灝嗘椂闂翠互鍥哄畾鐨勬牸寮忔樉紺哄嚭鏉ワ紝涓よ呯殑榪斿洖鍊奸兘鏄?span lang=EN-US>char*鍨嬬殑瀛楃涓層傝繑鍥炵殑鏃墮棿鏍煎紡涓猴細  

鏄熸湡鍑?鏈堜喚鏃ユ湡 鏃?span lang=EN-US>:鍒?span lang=EN-US>:縐?騫?/font>\n\0  
渚嬪錛?span lang=EN-US>Wed Jan 02 02:03:55 1980\n\0  

鍏朵腑\n鏄竴涓崲琛岀錛?span lang=EN-US>\0鏄竴涓┖瀛楃錛岃〃紺哄瓧絎︿覆緇撴潫銆備笅闈㈡槸涓や釜鍑芥暟鐨勫師鍨嬶細  

char * asctime(const struct tm * timeptr);  
char * ctime(const time_t *timer);  

鍏朵腑asctime()鍑芥暟鏄氳繃tm緇撴瀯鏉ョ敓鎴愬叿鏈夊浐瀹氭牸寮忕殑淇濆瓨鏃墮棿淇℃伅鐨勫瓧絎︿覆錛岃?span lang=EN-US>ctime()鏄氳繃鏃ュ巻鏃墮棿鏉ョ敓鎴愭椂闂村瓧絎︿覆銆傝繖鏍風殑璇濓紝asctime錛堬級鍑芥暟鍙槸鎶?span lang=EN-US>tm緇撴瀯瀵硅薄涓殑鍚勪釜鍩熷~鍒版椂闂村瓧絎︿覆鐨勭浉搴斾綅緗氨琛屼簡錛岃?span lang=EN-US>ctime錛堬級鍑芥暟闇瑕佸厛鍙傜収鏈湴鐨勬椂闂磋緗紝鎶婃棩鍘嗘椂闂磋漿鍖栦負鏈湴鏃墮棿錛岀劧鍚庡啀鐢熸垚鏍煎紡鍖栧悗鐨勫瓧絎︿覆銆傚湪涓嬮潰錛屽鏋?span lang=EN-US>t鏄竴涓潪絀虹殑time_t鍙橀噺鐨勮瘽錛岄偅涔堬細  

printf(ctime(&t));  

絳変環浜庯細  

struct tm *ptr;  
ptr=localtime(&t);  
printf(asctime(ptr));  

閭d箞錛屼笅闈㈣繖涓▼搴忕殑涓ゆ潯printf璇彞杈撳嚭鐨勭粨鏋滃氨鏄笉鍚岀殑浜嗭紙闄ら潪浣犲皢鏈湴鏃跺尯璁句負涓栫晫鏍囧噯鏃墮棿鎵鍦ㄧ殑鏃跺尯錛夛細  

#include "time.h"  
#include "stdio.h"  
int main(void)  
{  
struct tm *ptr;  
time_t lt;  
lt =time(NUL);  
ptr=gmtime(<);  
printf(asctime(ptr));  
printf(ctime(<));  
return 0;  
}  

榪愯緇撴灉錛?span lang=EN-US>  

Sat Jul 30 08:43:03 2005  
Sat Jul 30 16:43:03 2005  

4.4 鑷畾涔夋椂闂存牸寮?span lang=EN-US>  

鎴戜滑鍙互浣跨敤strftime錛堬級鍑芥暟灝嗘椂闂存牸寮忓寲涓烘垜浠兂瑕佺殑鏍煎紡銆傚畠鐨勫師鍨嬪涓嬶細  

size_t strftime(  
char *strDest,  
size_t maxsize,  
const char *format,  
const struct tm *timeptr  
);
鎴戜滑鍙互鏍規嵁format鎸囧悜瀛楃涓蹭腑鏍煎紡鍛戒護鎶?span lang=EN-US>timeptr涓繚瀛樼殑鏃墮棿淇℃伅鏀懼湪strDest鎸囧悜鐨勫瓧絎︿覆涓紝鏈澶氬悜strDest涓瓨鏀?span lang=EN-US>maxsize涓瓧絎︺傝鍑芥暟榪斿洖鍚?span lang=EN-US>strDest鎸囧悜鐨勫瓧絎︿覆涓斁緗殑瀛楃鏁般?span lang=EN-US>  

鍑芥暟strftime()鐨勬搷浣滄湁浜涚被浼間簬sprintf()錛氳瘑鍒互鐧懼垎鍙?span lang=EN-US>(%)寮濮嬬殑鏍煎紡鍛戒護闆嗗悎錛屾牸寮忓寲杈撳嚭緇撴灉鏀懼湪涓涓瓧絎︿覆涓傛牸寮忓寲鍛戒護璇存槑涓?span lang=EN-US>strDest涓悇縐嶆棩鏈熷拰鏃墮棿淇℃伅鐨勭‘鍒囪〃紺烘柟娉曘傛牸寮忎覆涓殑鍏朵粬瀛楃鍘熸牱鏀捐繘涓蹭腑銆傛牸寮忓懡浠ゅ垪鍦ㄤ笅闈紝瀹冧滑鏄尯鍒嗗ぇ灝忓啓鐨勩?span lang=EN-US>  

%a 鏄熸湡鍑犵殑綆鍐?/font>  
%A
鏄熸湡鍑犵殑鍏ㄧО
  
%b
鏈堝垎鐨勭畝鍐?/font>  
%B
鏈堜喚鐨勫叏縐?/font>  
%c
鏍囧噯鐨勬棩鏈熺殑鏃墮棿涓?/font>  
%C
騫翠喚鐨勫悗涓や綅鏁板瓧
  
%d
鍗佽繘鍒惰〃紺虹殑姣忔湀鐨勭鍑犲ぉ
  
%D
鏈?span lang=EN-US>/
澶?span lang=EN-US>/騫?/font>  
%e
鍦ㄤ袱瀛楃鍩熶腑錛屽崄榪涘埗琛ㄧず鐨勬瘡鏈堢殑絎嚑澶?/font>  
%F
騫?span lang=EN-US>-鏈?span lang=EN-US>-鏃?/font>  
%g
騫翠喚鐨勫悗涓や綅鏁板瓧錛屼嬌鐢ㄥ熀浜庡懆鐨勫勾
  
%G
騫村垎錛屼嬌鐢ㄥ熀浜庡懆鐨勫勾
  
%h
綆鍐欑殑鏈堜喚鍚?/font>  
%H 24
灝忔椂鍒剁殑灝忔椂
  
%I 12
灝忔椂鍒剁殑灝忔椂
  
%j
鍗佽繘鍒惰〃紺虹殑姣忓勾鐨勭鍑犲ぉ
  
%m
鍗佽繘鍒惰〃紺虹殑鏈堜喚
  
%M
鍗佹椂鍒惰〃紺虹殑鍒嗛挓鏁?/font>  
%n
鏂拌絎?/font>  
%p
鏈湴鐨?span lang=EN-US>AM鎴?span lang=EN-US>PM鐨勭瓑浠鋒樉紺?/font>  
%r 12
灝忔椂鐨勬椂闂?/font>  
%R
鏄劇ず灝忔椂鍜屽垎閽燂細
hh:mm  
%S
鍗佽繘鍒剁殑縐掓暟
  
%t
姘村鉤鍒惰〃絎?/font>  
%T
鏄劇ず鏃跺垎縐掞細
hh:mm:ss  
%u
姣忓懆鐨勭鍑犲ぉ錛屾槦鏈熶竴涓虹涓澶?錛堝間粠0鍒?span lang=EN-US>6錛屾槦鏈熶竴涓?span lang=EN-US>0錛?/font>  
%U
絎勾鐨勭鍑犲懆錛屾妸鏄熸湡鏃ュ仛涓虹涓澶╋紙鍊間粠0鍒?span lang=EN-US>53錛?/font>  
%V
姣忓勾鐨勭鍑犲懆錛屼嬌鐢ㄥ熀浜庡懆鐨勫勾
  
%w
鍗佽繘鍒惰〃紺虹殑鏄熸湡鍑狅紙鍊間粠0鍒?span lang=EN-US>6錛屾槦鏈熷ぉ涓?span lang=EN-US>0錛?/font>  
%W
姣忓勾鐨勭鍑犲懆錛屾妸鏄熸湡涓鍋氫負絎竴澶╋紙鍊間粠0鍒?span lang=EN-US>53錛?/font>  
%x
鏍囧噯鐨勬棩鏈熶覆
  
%X
鏍囧噯鐨勬椂闂翠覆
  
%y
涓嶅甫涓栫邯鐨勫崄榪涘埗騫翠喚錛堝間粠0鍒?span lang=EN-US>99錛?/font>  
%Y
甯︿笘綰儴鍒嗙殑鍗佽繘鍒跺勾浠?/font>  
%z
錛?span lang=EN-US>%Z 鏃跺尯鍚嶇О錛屽鏋滀笉鑳藉緱鍒版椂鍖哄悕縐板垯榪斿洖絀哄瓧絎︺?/font>  
%%
鐧懼垎鍙?span lang=EN-US>  

濡傛灉鎯蟲樉紺虹幇鍦ㄦ槸鍑犵偣浜嗭紝騫朵互12灝忔椂鍒舵樉紺猴紝灝辮薄涓嬮潰榪欐紼嬪簭錛?span lang=EN-US>  

#include “time.h”  
#include “stdio.h”  
int main(void)  
{  
struct tm *ptr;  
time_t lt;  
char str[80];  
lt=time(NUL);  
ptr=localtime(<);  
strftime(str,100,"It is now %I %p",ptr);  
printf(str);  
return 0;  
}  

鍏惰繍琛岀粨鏋滀負錛?/font>  
It is now 4PM  

鑰屼笅闈㈢殑紼嬪簭鍒欐樉紺哄綋鍓嶇殑瀹屾暣鏃ユ湡錛?span lang=EN-US>  

#include <stdio.h>  
#include <time.h>  

void main( void )  
{  
struct tm *newtime;  
char tmpbuf[128];  
time_t lt1;  
time( <1 );  
newtime=localtime(<1);  
strftime( tmpbuf, 128, "Today is %A, day %d of %B in the year %Y.\n", newtime);  
printf(tmpbuf);  
}  

榪愯緇撴灉錛?span lang=EN-US>  

Today is Saturday, day 30 of July in the year 2005.  

4.5 璁$畻鎸佺畫鏃墮棿鐨勯暱搴?span lang=EN-US>  

鏈夋椂鍊欏湪瀹為檯搴旂敤涓璁$畻涓涓簨浠舵寔緇殑鏃墮棿闀垮害錛屾瘮濡傝綆楁墦瀛楅熷害銆傚湪絎?span lang=EN-US>1鑺傝鏃墮儴鍒嗕腑錛屾垜宸茬粡鐢?span lang=EN-US>clock鍑芥暟涓句簡涓涓緥瀛愩?span lang=EN-US>Clock()鍑芥暟鍙互綺劇‘鍒版縐掔駭銆傚悓鏃訛紝鎴戜滑涔熷彲浠ヤ嬌鐢?span lang=EN-US>difftime()鍑芥暟錛屼絾瀹冨彧鑳界簿紜埌縐掋傝鍑芥暟鐨勫畾涔夊涓嬶細  

double difftime(time_t time1, time_t time0);  

铏界劧璇ュ嚱鏁拌繑鍥炵殑浠ョ璁$畻鐨勬椂闂撮棿闅旀槸double綾誨瀷鐨勶紝浣嗚繖騫朵笉璇存槑璇ユ椂闂村叿鏈夊悓double涓鏍風殑綺劇‘搴︼紝榪欐槸鐢卞畠鐨勫弬鏁拌寰楃殑錛?span lang=EN-US>time_t鏄互縐掍負鍗曚綅璁$畻鐨勶級銆傛瘮濡備笅闈竴孌電▼搴忥細  

#include "time.h"  
#include "stdio.h"  
#include "stdlib.h"  
int main(void)  
{  
time_t start,end;  
start = time(NUL);  
system("pause");  
end = time(NUL);  
printf("The pause used %f seconds.\n",difftime(end,start));//<-  
system("pause");  
return 0;  
}  

榪愯緇撴灉涓猴細  
璇鋒寜浠繪剰閿戶緇?/font>. . .  
The pause used 2.000000 seconds.  
璇鋒寜浠繪剰閿戶緇?span lang=EN-US>. . .  

鍙互鎯沖儚錛屾殏鍋滅殑鏃墮棿騫朵笉閭d箞宸ф槸鏁存暣2縐掗挓銆傚叾瀹烇紝浣犲皢涓婇潰紼嬪簭鐨勫甫鏈?span lang=EN-US>“//<-”娉ㄩ噴鐨勪竴琛岀敤涓嬮潰鐨勪竴琛屼唬鐮佹浛鎹細  

printf("The pause used %f seconds.\n",end-start);  

鍏惰繍琛岀粨鏋滄槸涓鏍風殑銆?span lang=EN-US>  

4.6 鍒嗚В鏃墮棿杞寲涓烘棩鍘嗘椂闂?span lang=EN-US>  

榪欓噷璇寸殑鍒嗚В鏃墮棿灝辨槸浠ュ勾銆佹湀銆佹棩銆佹椂銆佸垎銆佺絳夊垎閲忎繚瀛樼殑鏃墮棿緇撴瀯錛屽湪C/C++涓槸tm緇撴瀯銆傛垜浠彲浠ヤ嬌鐢?span lang=EN-US>mktime錛堬級鍑芥暟灝嗙敤tm緇撴瀯琛ㄧず鐨勬椂闂磋漿鍖栦負鏃ュ巻鏃墮棿銆傚叾鍑芥暟鍘熷瀷濡備笅錛?span lang=EN-US>  

time_t mktime(struct tm * timeptr);  

鍏惰繑鍥炲煎氨鏄漿鍖栧悗鐨勬棩鍘嗘椂闂淬傝繖鏍鋒垜浠氨鍙互鍏堝埗瀹氫竴涓垎瑙f椂闂達紝鐒跺悗瀵硅繖涓椂闂磋繘琛屾搷浣滀簡錛屼笅闈㈢殑渚嬪瓙鍙互璁$畻鍑?st1:chsdate w:st="on" Year="1997" Month="7" Day="1" IsLunarDate="False" IsROCDate="False">1997騫?span lang=EN-US>7鏈?span lang=EN-US>1鏃?/st1:chsdate>鏄槦鏈熷嚑錛?span lang=EN-US>  

#include "time.h"  
#include "stdio.h"  
#include "stdlib.h"  
int main(void)  
{  
struct tm t;  
time_t t_of_day;  
t.tm_year=1997-1900;  
t.tm_mon=6;  
t.tm_mday=1;  
t.tm_hour=0;  
t.tm_min=0;  
t.tm_sec=1;  
t.tm_isdst=0;  
t_of_day=mktime(&t);  
printf(ctime(&t_of_day));  
return 0;  
}  
榪愯緇撴灉錛?/font>  
Tue Jul 01 00:00:01 1997  
鐜板湪娉ㄦ剰浜嗭紝鏈変簡mktime()鍑芥暟錛屾槸涓嶆槸鎴戜滑鍙互鎿嶄綔鐜板湪涔嬪墠鐨勪換浣曟椂闂村憿錛熶綘鍙互閫氳繃榪欑鍔炴硶綆楀嚭1945騫?span lang=EN-US>8
鏈?span lang=EN-US>15鍙鋒槸鏄熸湡鍑犲悧錛熺瓟妗堟槸鍚﹀畾鐨勩傚洜涓鴻繖涓椂闂村湪1970騫?span lang=EN-US>1鏈?span lang=EN-US>1鏃?/st1:chsdate>涔嬪墠錛屾墍浠ュ湪澶у鏁扮紪璇戝櫒涓紝榪欐牱鐨勭▼搴忚櫧鐒跺彲浠ョ紪璇戦氳繃錛屼絾榪愯鏃朵細寮傚父緇堟銆?span lang=EN-US>



]]>
鐢眘witch閫夋嫨緇撴瀯鐞嗚В灞閮ㄥ彉閲?/title><link>http://m.shnenglu.com/franksunny/archive/2007/04/05/21358.html</link><dc:creator>frank.sunny</dc:creator><author>frank.sunny</author><pubDate>Thu, 05 Apr 2007 15:25:00 GMT</pubDate><guid>http://m.shnenglu.com/franksunny/archive/2007/04/05/21358.html</guid><wfw:comment>http://m.shnenglu.com/franksunny/comments/21358.html</wfw:comment><comments>http://m.shnenglu.com/franksunny/archive/2007/04/05/21358.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/franksunny/comments/commentRss/21358.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/franksunny/services/trackbacks/21358.html</trackback:ping><description><![CDATA[  <span> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><span style="FONT-SIZE: 14pt; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐢?/span><span lang=EN-US style="FONT-SIZE: 14pt">switch</span><span style="FONT-SIZE: 14pt; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">閫夋嫨緇撴瀯鐞嗚В灞閮ㄥ彉閲?/span><span lang=EN-US style="FONT-SIZE: 14pt"><o:p></o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p></span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍑芥暟浣撳唴閮ㄨ嚜瀹氫箟鍙橀噺錛岀О涓哄眬閮ㄥ彉閲忥紝瀛樺偍浜庢爤錛?/span><span lang=EN-US>stack</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛変腑錛岀敱緙栬瘧鍣ㄨ嚜鍔ㄥ垎閰嶅拰閲婃斁錛屽眬閮ㄥ彉閲忕殑鐢熷瓨鏈燂紙鎴栬呰浣滅敤鍩燂級鏄綋鍓嶅嚱鏁板唴閮紝浣跨敤鏃跺繀欏誨垵濮嬪寲錛屽惁鍒欏叾鍊煎皢涓嶅畾銆備互鍓嶅灞閮ㄥ彉閲忕殑瀹氫箟涔熷氨鏄繖涔堝錛岃屼笖涔熷氨閭d箞鍦ㄧ敤銆傝繎鏈熺鍒板涓嬩竴涓棶棰橈細</span></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333">void func( void ) <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333">{ <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>int x = 2; <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>switch ( x ) <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>{<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>int m =0;<span style="mso-tab-count: 1">       </span>//initialization skipped by case0,case1,case2,default <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>case 0 :<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>int i = 0;<span style="mso-tab-count: 2">        </span>//initialization skipped by case1,case2,default <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>{ int j = 1; }<span style="mso-spacerun: yes">   </span>// OK, initialized in enclosing block<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>break;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>case 1 : <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>break;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>case 2:<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>break;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>default:<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>int k = 1;<span style="mso-tab-count: 2">              </span>// OK, initialization not skipped<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333"><span style="mso-spacerun: yes">   </span>} <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt; COLOR: #333333">}<o:p></o:p></span></strong></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">閬囧埌榪欎釜闂錛岀綉涓婄殑瑙g瓟寰堝錛屽緢澶氫漢瑙夊緱</span><span lang=EN-US>switch</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍐呬笉鑳藉畾涔夊眬閮ㄥ彉閲忥紝榪欎釜鏄庢樉鏄笉瀵圭殑銆傚洜涓烘垜鎶婁唬鐮佹敼鎴愪互涓嬪艦寮忓悗灝卞畬鍏ㄥ彲浠ョ敤浜嗐?/span></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt">void func( void ) <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt">{ <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>int x = 2; <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>switch ( x ) <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>{<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>int m;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>m = 0;<span style="mso-tab-count: 3">                   </span>//without execute; <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>case 0:<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>int i;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>i = 0; <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>{ int j = 1; }<span style="mso-spacerun: yes">   </span>// OK, initialized in enclosing block <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>printf("%d<span style="mso-tab-count: 1">    </span>%d\n", m, i);<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>break;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>case 1: <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>i = 1;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>printf("%d<span style="mso-tab-count: 1">    </span>%d\n", m, i);<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>break;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>case 2:<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>i = 2;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>printf("%d<span style="mso-tab-count: 1">    </span>%d\n", m, i);<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>break;<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>default:<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-tab-count: 1">      </span><span style="mso-spacerun: yes">   </span>int k = 1;<span style="mso-tab-count: 2">              </span>// OK, initialization not skipped<o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt"><span style="mso-spacerun: yes">   </span>} <o:p></o:p></span></strong></p> <p class=MsoNormal style="BACKGROUND: #cccccc; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 24.1pt; mso-char-indent-count: 2.0"><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 12pt">}<o:p></o:p></span></strong></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緙栬瘧鏃舵湁涓涓?/span><span lang=EN-US>warning</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛屽嵆“</span><span lang=EN-US>local variable 'm' used without having been initialized</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">”錛屾墽琛岀粨鏋滀負錛?/span><span lang=EN-US>-858993460<span style="mso-tab-count: 1">       </span>2</span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍥犳</span><span lang=EN-US>switch</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍐呬笉浣嗗彲浠ュ畾涔夊彉閲忥紝鑰屼笖涔熶笉鐢ㄥ儚寰堝浜烘墍璇寸殑鍦?/span><span lang=EN-US>case</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍐呴亣鍒拌鐢ㄥ彉閲忔椂涓瀹氳鐢?/span><span lang=EN-US>{}</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鎷搗鏉ワ紝涓嶈繃涓ユ牸鐨勮涓嶇敤</span><span lang=EN-US>{}</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鎵╄搗鏉ョ殑鍙橀噺鏄槸灞炰簬鏁翠釜</span><span lang=EN-US>switch</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍧楃粨鏋勭殑錛屼負姝ょ紪紼嬩竴瀹氳灝嗘柊澧炲彉閲忎綔鐢ㄥ煙闄愬畾鍦?/span><span lang=EN-US>case</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍐呭氨蹇呴』瑕佺敤</span><span lang=EN-US>{}</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">銆?/span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">閫氳繃</span><span lang=EN-US>switch</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">···</span><span lang=EN-US>case</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緇撴瀯錛屽灞閮ㄥ彉閲忕殑澹版槑銆佸畾涔変互鍙婂垵濮嬪寲絳夋蹇靛彲浠ユ湁涓涓瘮杈冩竻鏅扮殑璁よ瘑銆傛垜鐨勭悊瑙e氨鏄細澹版槑璇彞涓嶇鏄斁鍦ㄥ摢閲岋紝鍏剁紪璇戞椂閮芥槸灝嗗叾緗《鍒板潡鐨勫ご閮紝濡?/span><span lang=EN-US>int k</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">铏界劧鍦?/span><span lang=EN-US>default</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涓紝浣嗘槸榪欎釜鍙橀噺鐨勫0鏄庡氨鍦?/span><span lang=EN-US>switch</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨?/span><span lang=EN-US>{}</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍐咃紝鍏剁敓瀛樻湡涓庡彉閲?/span><span lang=EN-US>m</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">絳夊悓錛屽彧鏄敱浜庡墠闈㈡病鏈夊0鏄庯紝鎵浠?/span><span lang=EN-US>default</span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">涔嬪墠涓嶈兘鐢ㄣ?/span></p> <p align=center></span></p> <img src ="http://m.shnenglu.com/franksunny/aggbug/21358.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/franksunny/" target="_blank">frank.sunny</a> 2007-04-05 23:25 <a href="http://m.shnenglu.com/franksunny/archive/2007/04/05/21358.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鑷繁瀹炵幇String綾伙紙緗戣絎旇瘯褰掓潵錛?/title><link>http://m.shnenglu.com/franksunny/archive/2007/03/04/19199.html</link><dc:creator>frank.sunny</dc:creator><author>frank.sunny</author><pubDate>Sun, 04 Mar 2007 13:53:00 GMT</pubDate><guid>http://m.shnenglu.com/franksunny/archive/2007/03/04/19199.html</guid><wfw:comment>http://m.shnenglu.com/franksunny/comments/19199.html</wfw:comment><comments>http://m.shnenglu.com/franksunny/archive/2007/03/04/19199.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://m.shnenglu.com/franksunny/comments/commentRss/19199.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/franksunny/services/trackbacks/19199.html</trackback:ping><description><![CDATA[<p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: center" align=center><strong style="mso-bidi-font-weight: normal"><span style="FONT-SIZE: 14pt; FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緗戣絎旇瘯褰掓潵</span> </strong><strong style="mso-bidi-font-weight: normal"><span lang=EN-US style="FONT-SIZE: 14pt"><o:p></o:p></span></strong></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏄ㄥぉ鍘葷綉璁紙鏉窞錛夌瑪璇曚簡錛屽仛浜嗕笅絎旇瘯棰橈紝鎰熻棰樼洰閮戒笉闅撅紝浣嗘槸鑷繁鍋氱殑鐨勭‘涓嶆庝箞鏍鳳紝浼拌鏄病鏈轟細鍘諱簡錛屼笉榪囨殏鏃惰繕鏄厛鎶婂嚑閬撹嚜宸辮繕璁板緱鐨勯鐩紝鍐欏嚭鏉ワ紝鎬葷粨涓嬶紝浠ュ仛澶嶄範銆?/span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">1銆?span style="FONT: 7pt 'Times New Roman'">  </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">瑕佹眰鑷繁瀹炵幇</span> <span lang=EN-US>String</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">綾伙紝緇欏嚭浜?/span> <span lang=EN-US>String</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">綾葷殑浠ヤ笅澶存枃浠剁被澹版槑</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>class String</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>public:</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>String(const char *m_char = NULL);</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>String(const String & Str);</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>String& operator = (const String &Str);</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>~String();</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>private:</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>char * m_Data;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>};</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏充簬</span> <span lang=EN-US>String</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">綾葷殑絎旇瘯棰橈紝浠ュ墠鐪嬫灄閿愮殑闅忕瑪鏃跺惉璇翠粬鍦ㄥ井杞潰璇曟椂鏇劇鍒伴偅涔堜竴閬撻鐩紝鎴戣嚜宸變篃娌℃湁鐪熺殑涓嬬瑪鍘誨仛榪囷紝騫沖父閮芥槸鎷挎潵灝辯敤鐨勶紝榪欐鑷繁紕板埌錛屾墠鐭ラ亾浼氭寰楅偅涔堟儴錛屽弽姝g紪寰椾笉鍫叆鐩紙鎴戝氨涓嶆嬁鍑烘潵鐚笐浜嗭級錛屼笅闈㈡槸鎴戝洖鏉ュ悗錛岃嚜宸遍噸鏂板啓鐨勭瓟妗堛?/span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>String::String(const char* m_char)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>int m_nLength = strlen(m_char) + 1;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>if (m_Data != NULL)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>delete [] m_Data;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>m_Data = NULL;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>}//</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠ヤ笂鍒ゆ柇鏄惁蹇呰</span> <span lang=EN-US>??</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>m_Data = new char[m_nLength];</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>memcpy(m_Data, m_char, m_nLength);</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>}</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>String::String(const String &Str)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>int m_nLength = strlen(Str.m_Data) + 1;//</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠ュ墠鐪熺殑涓嶇煡閬擄紝鍘熸潵瀵硅薄鐨勭鏈夊彉閲?/span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 194.25pt; mso-char-indent-count: 18.5"><span lang=EN-US>//</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍦ㄧ被鐨勫疄鐜頒唬鐮佷腑涔熸槸鍙互璁塊棶鐨?/span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>if (m_Data != NULL)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>delete [] m_Data;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>m_Data = NULL;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>}//</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠ヤ笂鍒ゆ柇鏄惁蹇呰</span> <span lang=EN-US>??</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>m_Data = new char[m_nLength];</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>memcpy(m_Data, Str.m_Data, m_nLength);</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>}</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>String& String::operator = (const String& Str)<span style="mso-spacerun: yes">  </span></span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>if(this == &Str)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>return *this;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>int m_nLength = strlen(Str.m_Data) + 1;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>if (m_Data != NULL)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>delete [] m_Data;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>m_Data = NULL;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>}//</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">浠ヤ笂鍒ゆ柇鏄惁蹇呰</span> <span lang=EN-US>??</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span></span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>m_Data = new char[m_nLength];</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>memcpy(m_Data, Str.m_Data, m_nLength);</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>return *this;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>}</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>String::~String()</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>if (m_Data != NULL)</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>delete [] m_Data;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 2">              </span>m_Data = NULL;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>}</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>}</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">2銆?span style="FONT: 7pt 'Times New Roman'">  </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏充簬鍐呭瓨鍒嗛厤</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">榪欎釜棰樼洰寰堢畝鍗曪紝灝辯粰浜嗕竴涓嚱鏁幫紝鐒跺悗闂嚱鏁板唴鐨勫眬閮ㄥ彉閲忓瓨鏀懼湪鍝噷錛屾垜涔熶笉鐭ラ亾涓轟粈涔堝綋鏃朵細閫夋嫨</span> <span lang=EN-US>heap(</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍫?/span> <span lang=EN-US>)</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛屼笅闈㈠啀鎶婂嚑涓蹇電綏鍒楀嚭鏉ワ細</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 47.25pt; TEXT-INDENT: -26.25pt; mso-list: l0 level2 lfo1; tab-stops: list 47.25pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">1.<span style="FONT: 7pt 'Times New Roman'">            </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍫嗗尯錛?/span> <span lang=EN-US>heap</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛夛細鐢辯▼搴忓憳鐢寵鍒嗛厤鍜岄噴鏀撅紝灞炲姩鎬佸唴瀛樺垎閰嶆柟寮忥紝鑻ョ▼搴忓憳涓嶉噴鏀撅紝紼嬪簭緇撴潫鏃跺彲鑳戒細鐢?/span> <span lang=EN-US>OS</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍥炴敹銆備笉榪囪繖涓唴瀛樺垎閰嶅緢瀹規槗寮曡搗闂錛屽鏋滅敵璇風殑鍐呭瓨涓嶉噴鏀懼氨浼氶犳垚鍐呭瓨娉勬紡錛涘鏋滈噴鏀劇殑涓嶆槸鎵瑕侀噴鏀劇殑鍐呭瓨錛屽垯杞昏呭紩璧風▼搴忚繍琛岀粨鏋滃嚭閿欙紝閲嶈呯郴緇熷穿婧冦?/span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 47.25pt; TEXT-INDENT: -26.25pt; mso-list: l0 level2 lfo1; tab-stops: list 47.25pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">2.<span style="FONT: 7pt 'Times New Roman'">            </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鏍堝尯錛?/span> <span lang=EN-US>stack</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛夛細緙栬瘧鍣ㄨ嚜鍔ㄥ垎閰嶉噴鏀撅紝瀛樻斁鍑芥暟鐨勫艦鍙傚箋佸眬閮ㄥ彉閲忕殑鍊鹼紝涔熸槸灞炰簬鍔ㄦ佸唴瀛樺垎閰嶆柟寮忥紝瀹冪敱緋葷粺鍒嗛厤錛屾墍浠ユ墽琛屾晥鐜囦篃楂橈紝涓嶈繃鑷敱搴﹀皬錛屽0鏄庢椂灝卞緱鍐沖畾鍏跺叿浣撳ぇ灝忋?/span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 47.25pt; TEXT-INDENT: -26.25pt; mso-list: l0 level2 lfo1; tab-stops: list 47.25pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">3.<span style="FONT: 7pt 'Times New Roman'">            </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏ㄥ眬鍖猴紙闈欐佸尯錛夛紙</span> <span lang=EN-US>static</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">錛夛細鍏ㄥ眬鍙橀噺鍜岄潤鎬佸彉閲忕殑瀛樺偍鏄斁鍦ㄤ竴鍧楃殑錛岃屼笖鍒濆鍖栫殑鍏ㄥ眬鍙橀噺鍜岄潤鎬佸彉閲忓湪涓鍧楀尯鍩燂紝鏈垵濮嬪寲鐨勫叏灞鍙橀噺鍜屾湭鍒濆鍖栫殑闈欐佸彉閲忓湪鐩擱偦鐨勫彟涓鍧楀尯鍩熴傜▼搴忕粨鏉熷悗鐢辯郴緇熼噴鏀撅紝鎵浠ヤ篃涓嶄細閫犳垚鍐呭瓨闂銆?/span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">闄や簡浠ヤ笂鐨勫彉閲忓錛岃繕鏈変袱綾誨瓨鏀句綅緗紝鏂囧瓧甯擱噺鍖哄拰紼嬪簭浠g爜鍖猴紝涓よ呴兘鏄敱緋葷粺鍒嗛厤鍜岄噴鏀撅紝涓旀枃瀛楀父閲忓尯鍜屽墠闈笁鍖哄悎鎴愪負紼嬪簭鏁版嵁鍖猴紝涓庣▼搴忎唬鐮佸尯鐩稿搴斻?/span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt 18pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 18.0pt"><span lang=EN-US style="mso-fareast-font-family: 'Times New Roman'"><span style="mso-list: Ignore">3銆?span style="FONT: 7pt 'Times New Roman'">  </span></span></span><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏充簬綾葷戶鎵跨殑鏋勯犲拰鏋愭瀯鍑芥暟</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>class Base</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>public:</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>Base(){cout<< "Base" <<endl;};</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>~Base(){cout<<"~Base"<<endl;};</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>protected:</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>private:</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>};</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>class First:public Base</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>public:</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>First(){cout << "First" << endl;};</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>~First(){cout << "~First" <<endl;};</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>};</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><o:p> </o:p> </span></p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>int main()</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>{</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>Base *a = new First;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 1">       </span>delete a;</span> </p> <p class=MsoNormal style="BACKGROUND: silver; MARGIN: 0cm 0cm 0pt"><span lang=EN-US>}</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">闂▼搴忕殑杈撳嚭浼氭槸浠涔堬紵</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">緇撴灉寰堢畝鍗曪紝涔熷氨鏄?/span> <span lang=EN-US>Base</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-tab-count: 4">                            </span><span style="mso-spacerun: yes">   </span>First</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span lang=EN-US><span style="mso-spacerun: yes">                   </span>~Base</span> </p> <p class=MsoNormal style="MARGIN: 0cm 0cm 0pt"><span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鍏跺畠榪樻湁涓涓叧浜?/span> <span lang=EN-US>&</span> <span style="FONT-FAMILY: 瀹嬩綋; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">鐨勯鐩紝鎶婃垜鎼炵殑浜戦噷闆鵑噷鐨勶紝榪樿鍐嶇湅浜涗笢瑗挎墠鐭ラ亾鎬庝箞鏉ヨВ閲娿?/span> </p> <img src ="http://m.shnenglu.com/franksunny/aggbug/19199.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/franksunny/" target="_blank">frank.sunny</a> 2007-03-04 21:53 <a href="http://m.shnenglu.com/franksunny/archive/2007/03/04/19199.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[杞澆]鍏充簬瀵歸綈鍜宻izeof鍑芥暟http://m.shnenglu.com/franksunny/archive/2006/12/27/16894.htmlfrank.sunnyfrank.sunnyTue, 26 Dec 2006 16:01:00 GMThttp://m.shnenglu.com/franksunny/archive/2006/12/27/16894.htmlhttp://m.shnenglu.com/franksunny/comments/16894.htmlhttp://m.shnenglu.com/franksunny/archive/2006/12/27/16894.html#Feedback0http://m.shnenglu.com/franksunny/comments/commentRss/16894.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/16894.html
鍏充簬鎸囬拡鍜屾暟緇勩佺粨鏋勫拰綾葷殑sizeof璁茶Вhttp://blog.vckbase.com/billdavid/archive/2004/06/23/509.html
鍏充簬鑱斿悎浣撶殑sizeof璁茶Вhttp://blog.vckbase.com/smileonce/archive/2005/08/08/10658.html
鍏充簬瀵歸綈鐨勫皬緇撴ф枃绔?a >http://blog.vckbase.com/zhangjw_cn/archive/2005/08/09/10701.html
鑷繁鎳掑緱鎵撳紑閾炬帴錛屽啀鎶婂皬緇撴ф枃绔犵殑灝忕粨錛屼篃鎷挎潵杞竴涓嬨?br>
鏈鍚庡緱鍒頒簡浠ヤ笅緇撹錛?br>    1. 鎴愬憳鐨勫榻愭槸鎸夊0鏄庨『搴忚繘琛岀殑錛?br>    2. 瀵歸綈鍊肩敱緙栬瘧鎸囩ず鍜屾渶澶ф垚鍛樹袱鑰呰緝灝忕殑鍊煎喅瀹氾紱
    3. 鏈榻愬埌瀵歸綈鍊肩殑鎴愬憳涓璧峰艦鎴愬潡瀵歸綈錛堣仈鍚堝榻愶級錛?br>    4. 涓婁竴涓紙涓嬩竴涓級瀵歸綈閲囩敤鑷繁杈冨ぇ鍒欎笉鍙橈紝鑷繁杈冨皬鍒欏~鍏呰嚜宸卞榻愬埌涓婁竴涓紙涓嬩竴涓級澶у皬錛?br>    5. 姣忔垚鍛樺榻愶細濡傛灉鍓嶉潰宸插榻愬埌瀵歸綈鍊鹼紝涓嬩竴涓榻愯嚜宸便傚鏋滃墠闈㈡湭瀵歸綈鍒板榻愬鹼紝濡傛灉鍔犱笂涓嬩竴涓垚鍛樹笉澶т簬瀵歸綈鍊鹼紝涓嬩竴涓榻愯嚜宸憋紝鍚﹀垯濉厖鑷繁鍧楀榻愬埌瀵歸綈鍊箋?br>    6. 鏈鍚庤繕鏈榻愬埌瀵歸綈鍊肩殑錛屽~鍏呯┖闂村潡瀵歸綈鍒板榻愬箋?br>
浠庤繖浜涚粨璁猴紝鍙互寰楀埌錛?br>    1. 浠ヤ笂鐨勫榻愬師鍒欏叾瀹炴槸灝介噺鏁撮綈鎺掑垪銆佸敖閲忚妭鐪佸唴瀛樸?br>    2. 澹版槑鎴愬憳搴旇灝介噺閬垮厤涓嶅悓綾誨瀷閿欐潅寮鏉ワ紝鏈濂介噰鐢ㄤ粠灝忓埌澶ф垨鑰呬粠澶у埌灝忕殑欏哄簭錛堥敊寮鍚庯紝浼氬洜涓轟笂瀵歸綈鍜屼笅瀵歸綈鑰屽鍔犲~鍏呭紑閿錛夈?br>    3. 緙栬瘧鍣ㄧ己鐪侀噰鐢?瀛楄妭瀵歸綈涓昏鏄洜涓烘渶澶у熀鏈被鍨嬩負8鑷繁錛堜互鍓嶈嚜宸變笉鏄庣櫧錛屽湪璁哄潧鎻愯繃闂紝鍚庢潵錛屼互涓烘槸SSE鎸囦護鐨勫師鍥狅級銆?br>    4. 鎵嬬畻sizeof鏄病鏈夊繀瑕佺殑錛岃礋璐g殑錛堝彲浠ュ厛瀵歸綈鍑哄榻愬潡錛岀敤鍧楁暟涔樺榻愬鹼級銆?

]]>
絎旇涓銆佹暟鎹被鍨?/title><link>http://m.shnenglu.com/franksunny/archive/2006/11/10/14988.html</link><dc:creator>frank.sunny</dc:creator><author>frank.sunny</author><pubDate>Fri, 10 Nov 2006 15:43:00 GMT</pubDate><guid>http://m.shnenglu.com/franksunny/archive/2006/11/10/14988.html</guid><wfw:comment>http://m.shnenglu.com/franksunny/comments/14988.html</wfw:comment><comments>http://m.shnenglu.com/franksunny/archive/2006/11/10/14988.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/franksunny/comments/commentRss/14988.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/franksunny/services/trackbacks/14988.html</trackback:ping><description><![CDATA[     鎽樿:   < 絎旇涓銆佹暟鎹被鍨?> 鐜板湪涓氱晫鏅亶璁ゅ彲浠ヤ笅絳夊紡 紼嬪簭 = 鏁版嵁緇撴瀯   + 綆楁硶 + 鏂囨。 榪欑涓綃囩瑪璁板氨鍙浠ヤ笂鎻愬埌鐨勬暟鎹粨鏋勭粨鍚堟湰浜虹殑鐞嗚В灞曞紑鍋氫簺鎬葷粨銆?   綾誨瀷 紼嬪簭鐨勮緭鍏ヨ緭鍑虹殑瀹炰綋灝辨槸鏁版嵁淇℃伅錛岃屽榪欎簺鏁版嵁淇℃伅緇欎互褰掔被鍜岀粍緇囷紝鎴戜滑灝辯О涓烘暟鎹粨鏋勩傚洜姝ゆ暟鎹粨鏋勫氨鏄鏁版嵁鐨勭粍緇囧艦寮忥紝涔熷彲浠ヨ鏄鍐呭瓨鐨勭紪鐮佽鍒欍?..  <a href='http://m.shnenglu.com/franksunny/archive/2006/11/10/14988.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/franksunny/aggbug/14988.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/franksunny/" target="_blank">frank.sunny</a> 2006-11-10 23:43 <a href="http://m.shnenglu.com/franksunny/archive/2006/11/10/14988.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鐢變竴閬撻潰璇曢鏉ョ湅Struct鐨勫鐣岋紙鍐嶈皥緇撴瀯錛?/title><link>http://m.shnenglu.com/franksunny/archive/2006/10/20/13925.html</link><dc:creator>frank.sunny</dc:creator><author>frank.sunny</author><pubDate>Fri, 20 Oct 2006 13:52:00 GMT</pubDate><guid>http://m.shnenglu.com/franksunny/archive/2006/10/20/13925.html</guid><wfw:comment>http://m.shnenglu.com/franksunny/comments/13925.html</wfw:comment><comments>http://m.shnenglu.com/franksunny/archive/2006/10/20/13925.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://m.shnenglu.com/franksunny/comments/commentRss/13925.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/franksunny/services/trackbacks/13925.html</trackback:ping><description><![CDATA[     鎽樿: 鐢變竴閬撻潰璇曢鏉ョ湅 Struct 鐨勫鐣?   鏈枃鑺傞夎嚜瀹嬪疂鍗庣殑C/C++鐨剆truct娣卞眰鎺㈢儲涓鏂囷紝鏈漢瀵瑰叾鎵鎻忚堪鐨剆truct瀵歸綈姣旇緝鍠滄錛屼負姝よ漿鏉ヤ笌澶у鍒嗕韓錛屽師鏂囪http://blog.donews.com/21cnbao/archive/2005/09/08/544877.aspx   Intel 銆佸井杞瓑鍏徃鏇劇粡鍑鴻繃涓閬撶被浼肩殑闈㈣瘯棰橈細 1. #in...  <a href='http://m.shnenglu.com/franksunny/archive/2006/10/20/13925.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/franksunny/aggbug/13925.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/franksunny/" target="_blank">frank.sunny</a> 2006-10-20 21:52 <a href="http://m.shnenglu.com/franksunny/archive/2006/10/20/13925.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C/C++緇撴瀯浣撶殑涓涓珮綰х壒鎬р曗曟寚瀹氭垚鍛樼殑浣嶆暟http://m.shnenglu.com/franksunny/archive/2006/10/20/13887.htmlfrank.sunnyfrank.sunnyThu, 19 Oct 2006 16:05:00 GMThttp://m.shnenglu.com/franksunny/archive/2006/10/20/13887.htmlhttp://m.shnenglu.com/franksunny/comments/13887.htmlhttp://m.shnenglu.com/franksunny/archive/2006/10/20/13887.html#Feedback7http://m.shnenglu.com/franksunny/comments/commentRss/13887.htmlhttp://m.shnenglu.com/franksunny/services/trackbacks/13887.html闃呰鍏ㄦ枃

]]>
久久久久久久国产免费看| 国产精品亚洲综合专区片高清久久久| 无码人妻少妇久久中文字幕蜜桃 | 亚洲人成电影网站久久| 久久精品国产一区二区三区| 久久精品人妻一区二区三区| 久久久久国产精品人妻| 99精品国产在热久久无毒不卡 | 伊人久久大香线蕉综合热线| 国产精品成人久久久| 国产成人香蕉久久久久| 亚洲国产精品成人久久蜜臀| 72种姿势欧美久久久久大黄蕉| 99久久国产免费福利| 996久久国产精品线观看| 久久久久久国产精品美女| 亚洲综合熟女久久久30p| 久久综合丝袜日本网| 欧美激情一区二区久久久| 久久综合中文字幕| 一本色道久久99一综合| 久久精品中文字幕有码| 国产三级久久久精品麻豆三级 | 久久精品视频免费| 久久久综合九色合综国产| 久久久午夜精品| 精品无码久久久久久久动漫| 国产精品嫩草影院久久| 久久久久亚洲Av无码专| 久久香蕉超碰97国产精品| 99久久精品费精品国产一区二区| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 韩国三级大全久久网站| 久久精品国产亚洲AV影院| 久久综合九色综合欧美就去吻| 久久综合色区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久午夜无码鲁丝片| 少妇高潮惨叫久久久久久| 日韩精品久久久久久久电影蜜臀| 性做久久久久久久|