锘??xml version="1.0" encoding="utf-8" standalone="yes"?>狠狠色丁香久久婷婷综合蜜芽五月 ,亚洲国产精品久久电影欧美,久久久久久国产精品无码下载http://www.shnenglu.com/szhoftuncun/category/4896.htmlQQ緹や竴鍙鳳細35660860 QQ緹や簩鍙鳳細40790936 鐧懼害Hi緹わ細1131729 涓婂笣瑕佷綘姝誨湪榪芥眰瀹岀編鐨勯亾璺笂zh-cnThu, 16 Apr 2009 16:04:48 GMTThu, 16 Apr 2009 16:04:48 GMT60[杞琞鍏充簬瀛楄妭瀵歸綈http://www.shnenglu.com/szhoftuncun/archive/2009/04/15/80030.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Wed, 15 Apr 2009 08:56:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2009/04/15/80030.htmlhttp://www.shnenglu.com/szhoftuncun/comments/80030.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2009/04/15/80030.html#Feedback0http://www.shnenglu.com/szhoftuncun/comments/commentRss/80030.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/80030.html涓.浠涔堟槸瀛楄妭瀵歸綈,涓轟粈涔堣瀵歸綈?

    鐜頒唬璁$畻鏈轟腑鍐呭瓨絀洪棿閮芥槸鎸夌収byte鍒掑垎鐨勶紝浠庣悊璁轟笂璁蹭技涔庡浠諱綍綾誨瀷鐨勫彉閲忕殑璁塊棶鍙互浠庝換浣曞湴鍧寮濮嬶紝浣嗗疄闄呮儏鍐墊槸鍦ㄨ闂壒瀹氱被鍨嬪彉閲忕殑鏃跺欑粡甯稿湪鐗?瀹氱殑鍐呭瓨鍦板潃璁塊棶錛岃繖灝遍渶瑕佸悇縐嶇被鍨嬫暟鎹寜鐓т竴瀹氱殑瑙勫垯鍦ㄧ┖闂翠笂鎺掑垪錛岃屼笉鏄『搴忕殑涓涓帴涓涓殑鎺掓斁錛岃繖灝辨槸瀵歸綈銆?br>    瀵歸綈鐨勪綔鐢ㄥ拰鍘熷洜錛氬悇涓‖浠跺鉤鍙板瀛樺偍絀洪棿鐨勫鐞嗕笂鏈夊緢澶х殑涓嶅悓銆備竴浜涘鉤鍙板鏌愪簺鐗瑰畾綾誨瀷鐨勬暟鎹彧鑳戒粠鏌愪簺鐗瑰畾鍦板潃寮濮嬪瓨鍙栥傛瘮濡傛湁浜涙灦鏋勭殑CPU鍦ㄨ闂?涓涓病鏈夎繘琛屽榻愮殑鍙橀噺鐨勬椂鍊欎細鍙戠敓閿欒,閭d箞鍦ㄨ繖縐嶆灦鏋勪笅緙栫▼蹇呴』淇濊瘉瀛楄妭瀵歸綈.鍏朵粬騫沖彴鍙兘娌℃湁榪欑鎯呭喌錛屼絾鏄渶甯歌鐨勬槸濡傛灉涓嶆寜鐓ч傚悎鍏跺鉤鍙拌姹傚 鏁版嵁瀛樻斁榪涜瀵歸綈錛屼細鍦ㄥ瓨鍙栨晥鐜囦笂甯︽潵鎹熷け銆傛瘮濡傛湁浜涘鉤鍙版瘡嬈¤閮芥槸浠庡伓鍦板潃寮濮嬶紝濡傛灉涓涓猧nt鍨嬶紙鍋囪涓?2浣嶇郴緇燂級濡傛灉瀛樻斁鍦ㄥ伓鍦板潃寮濮嬬殑鍦版柟錛岄偅 涔堜竴涓鍛ㄦ湡灝卞彲浠ヨ鍑鴻繖32bit錛岃屽鏋滃瓨鏀懼湪濂囧湴鍧寮濮嬬殑鍦版柟錛屽氨闇瑕?涓鍛ㄦ湡錛屽茍瀵逛袱嬈¤鍑虹殑緇撴灉鐨勯珮浣庡瓧鑺傝繘琛屾嫾鍑戞墠鑳藉緱鍒拌32bit鏁?鎹傛樉鐒跺湪璇誨彇鏁堢巼涓婁笅闄嶅緢澶氥?/p>

浜?瀛楄妭瀵歸綈瀵圭▼搴忕殑褰卞搷:

    鍏堣鎴戜滑鐪嬪嚑涓緥瀛愬惂(32bit,x86鐜,gcc緙栬瘧鍣?:
璁劇粨鏋勪綋濡備笅瀹氫箟錛?br>struct A
{
    int a;
    char b;
    short c;
};
struct B
{
    char b;
    int a;
    short c;
};
鐜板湪宸茬煡32浣嶆満鍣ㄤ笂鍚勭鏁版嵁綾誨瀷鐨勯暱搴﹀涓?
char:1(鏈夌鍙鋒棤絎﹀彿鍚?    
short:2(鏈夌鍙鋒棤絎﹀彿鍚?    
int:4(鏈夌鍙鋒棤絎﹀彿鍚?    
long:4(鏈夌鍙鋒棤絎﹀彿鍚?    
float:4    double:8
閭d箞涓婇潰涓や釜緇撴瀯澶у皬濡備綍鍛?
緇撴灉鏄?
sizeof(strcut A)鍊間負8
sizeof(struct B)鐨勫煎嵈鏄?2

緇撴瀯浣揂涓寘鍚簡4瀛楄妭闀垮害鐨刬nt涓涓紝1瀛楄妭闀垮害鐨刢har涓涓拰2瀛楄妭闀垮害鐨剆hort鍨嬫暟鎹竴涓?B涔熶竴鏍?鎸夌悊璇碅,B澶у皬搴旇閮芥槸7瀛楄妭銆?br>涔嬫墍浠ュ嚭鐜頒笂闈㈢殑緇撴灉鏄洜涓虹紪璇戝櫒瑕佸鏁版嵁鎴愬憳鍦ㄧ┖闂翠笂榪涜瀵歸綈銆備笂闈㈡槸鎸夌収緙栬瘧鍣ㄧ殑榛樿璁劇疆榪涜瀵歸綈鐨勭粨鏋?閭d箞鎴戜滑鏄笉鏄彲浠ユ敼鍙樼紪璇戝櫒鐨勮繖縐嶉粯璁ゅ榻愯緗憿,褰撶劧鍙互.渚嬪:
#pragma pack (2) /*鎸囧畾鎸?瀛楄妭瀵歸綈*/
struct C
{
    char b;
    int a;
    short c;
};
#pragma pack () /*鍙栨秷鎸囧畾瀵歸綈錛屾仮澶嶇己鐪佸榻?/
sizeof(struct C)鍊兼槸8銆?br>淇敼瀵歸綈鍊間負1錛?br>#pragma pack (1) /*鎸囧畾鎸?瀛楄妭瀵歸綈*/
struct D
{
    char b;
    int a;
    short c;
};
#pragma pack () /*鍙栨秷鎸囧畾瀵歸綈錛屾仮澶嶇己鐪佸榻?/
sizeof(struct D)鍊間負7銆?br>鍚庨潰鎴戜滑鍐嶈瑙?pragma pack()鐨勪綔鐢?

涓?緙栬瘧鍣ㄦ槸鎸夌収浠涔堟牱鐨勫師鍒欒繘琛屽榻愮殑?

    鍏堣鎴戜滑鐪嬪洓涓噸瑕佺殑鍩烘湰姒傚康錛?br>1.鏁版嵁綾誨瀷鑷韓鐨勫榻愬鹼細
  瀵逛簬char鍨嬫暟鎹紝鍏惰嚜韜榻愬間負1錛屽浜巗hort鍨嬩負2錛屽浜巌nt,float,double綾誨瀷錛屽叾鑷韓瀵歸綈鍊間負4錛屽崟浣嶅瓧鑺傘?br>2.緇撴瀯浣撴垨鑰呯被鐨勮嚜韜榻愬鹼細鍏舵垚鍛樹腑鑷韓瀵歸綈鍊兼渶澶х殑閭d釜鍊箋?br>3.鎸囧畾瀵歸綈鍊?/font>錛?pragma pack (value)鏃剁殑鎸囧畾瀵歸綈鍊紇alue銆?br>4.鏁版嵁鎴愬憳銆佺粨鏋勪綋鍜岀被鐨勬湁鏁堝榻愬鹼細鑷韓瀵歸綈鍊煎拰鎸囧畾瀵歸綈鍊間腑灝忕殑閭d釜鍊箋?br>鏈?浜嗚繖浜涘鹼紝鎴戜滑灝卞彲浠ュ緢鏂逛究鐨勬潵璁ㄨ鍏蜂綋鏁版嵁緇撴瀯鐨勬垚鍛樺拰鍏惰嚜韜殑瀵歸綈鏂瑰紡銆傛湁鏁堝榻愬糔鏄渶緇堢敤鏉ュ喅瀹氭暟鎹瓨鏀懼湴鍧鏂瑰紡鐨勫鹼紝鏈閲嶈銆傛湁鏁堝榻怤錛屽氨鏄?琛ㄧず“瀵歸綈鍦∟涓?#8221;錛屼篃灝辨槸璇磋鏁版嵁鐨?瀛樻斁璧峰鍦板潃%N=0".鑰屾暟鎹粨鏋勪腑鐨勬暟鎹彉閲忛兘鏄寜瀹氫箟鐨勫厛鍚庨『搴忔潵鎺掓斁鐨勩傜涓涓暟鎹彉閲忕殑璧峰鍦板潃灝辨槸鏁?鎹粨鏋勭殑璧峰鍦板潃銆傜粨鏋勪綋鐨勬垚鍛樺彉閲忚瀵歸綈鎺掓斁錛岀粨鏋勪綋鏈韓涔熻鏍規嵁鑷韓鐨勬湁鏁堝榻愬煎渾鏁?灝辨槸緇撴瀯浣撴垚鍛樺彉閲忓崰鐢ㄦ婚暱搴﹂渶瑕佹槸瀵圭粨鏋勪綋鏈夋晥瀵歸綈鍊肩殑鏁存暟 鍊嶏紝緇撳悎涓嬮潰渚嬪瓙鐞嗚В)銆傝繖鏍峰氨涓嶈兘鐞嗚В涓婇潰鐨勫嚑涓緥瀛愮殑鍊間簡銆?br>渚嬪瓙鍒嗘瀽錛?br>鍒嗘瀽渚嬪瓙B錛?br>struct B
{
    char b;
    int a;
    short c;
};
鍋?璁綛浠庡湴鍧絀洪棿0x0000寮濮嬫帓鏀俱傝渚嬪瓙涓病鏈夊畾涔夋寚瀹氬榻愬鹼紝鍦ㄧ瑪鑰呯幆澧冧笅錛岃鍊奸粯璁や負4銆傜涓涓垚鍛樺彉閲廱鐨勮嚜韜榻愬兼槸1錛屾瘮鎸囧畾鎴栬呴粯璁ゆ寚瀹?瀵歸綈鍊?灝忥紝鎵浠ュ叾鏈夋晥瀵歸綈鍊間負1錛屾墍浠ュ叾瀛樻斁鍦板潃0x0000絎﹀悎0x0000%1=0.絎簩涓垚鍛樺彉閲廰錛屽叾鑷韓瀵歸綈鍊間負4錛屾墍浠ユ湁鏁堝榻愬間篃涓?錛?鎵浠ュ彧鑳藉瓨鏀懼湪璧峰鍦板潃涓?x0004鍒?x0007榪欏洓涓繛緇殑瀛楄妭絀洪棿涓紝澶嶆牳0x0004%4=0,涓旂揣闈犵涓涓彉閲忋傜涓変釜鍙橀噺c,鑷韓瀵歸綈鍊間負 2錛屾墍浠ユ湁鏁堝榻愬間篃鏄?錛屽彲浠ュ瓨鏀懼湪0x0008鍒?x0009榪欎袱涓瓧鑺傜┖闂翠腑錛岀鍚?x0008%2=0銆傛墍浠ヤ粠0x0000鍒?x0009瀛樻斁鐨?閮芥槸B鍐呭銆傚啀鐪嬫暟鎹粨鏋凚鐨勮嚜韜榻愬間負鍏跺彉閲忎腑鏈澶у榻愬?榪欓噷鏄痓錛夋墍浠ュ氨鏄?錛屾墍浠ョ粨鏋勪綋鐨勬湁鏁堝榻愬間篃鏄?銆傛牴鎹粨鏋勪綋鍦嗘暣鐨勮姹傦紝 0x0009鍒?x0000=10瀛楄妭錛岋紙10錛?錛夛紖4錛?銆傛墍浠?x0000A鍒?x000B涔熶負緇撴瀯浣揃鎵鍗犵敤銆傛晠B浠?x0000鍒?x000B 鍏辨湁12涓瓧鑺?sizeof(struct B)=12;鍏跺疄濡傛灉灝辮繖涓涓氨鏉ヨ瀹冨凡灝嗘弧瓚沖瓧鑺傚榻愪簡, 鍥犱負瀹冪殑璧峰鍦板潃鏄?,鍥犳鑲畾鏄榻愮殑,涔嬫墍浠ュ湪鍚庨潰琛ュ厖2涓瓧鑺?鏄洜涓虹紪璇戝櫒涓轟簡瀹炵幇緇撴瀯鏁扮粍鐨勫瓨鍙栨晥鐜?璇曟兂濡傛灉鎴戜滑瀹氫箟浜嗕竴涓粨鏋凚鐨勬暟緇?閭?涔堢涓涓粨鏋勮搗濮嬪湴鍧鏄?娌℃湁闂,浣嗘槸絎簩涓粨鏋勫憿?鎸夌収鏁扮粍鐨勫畾涔?鏁扮粍涓墍鏈夊厓绱犻兘鏄揣鎸ㄧ潃鐨?濡傛灉鎴戜滑涓嶆妸緇撴瀯鐨勫ぇ灝忚ˉ鍏呬負4鐨勬暣鏁板?閭d箞涓嬩竴 涓粨鏋勭殑璧峰鍦板潃灝嗘槸0x0000A,榪欐樉鐒朵笉鑳芥弧瓚崇粨鏋勭殑鍦板潃瀵歸綈浜?鍥犳鎴戜滑瑕佹妸緇撴瀯琛ュ厖鎴愭湁鏁堝榻愬ぇ灝忕殑鏁存暟鍊?鍏跺疄璇稿:瀵逛簬char鍨嬫暟鎹紝鍏?鑷韓瀵歸綈鍊間負1錛屽浜巗hort鍨嬩負2錛屽浜巌nt,float,double綾誨瀷錛屽叾鑷韓瀵歸綈鍊間負4錛岃繖浜涘凡鏈夌被鍨嬬殑鑷韓瀵歸綈鍊間篃鏄熀浜庢暟緇勮冭檻鐨?鍙?鏄洜涓鴻繖浜涚被鍨嬬殑闀垮害宸茬煡浜?鎵浠ヤ粬浠殑鑷韓瀵歸綈鍊間篃灝卞凡鐭ヤ簡.
鍚岀悊,鍒嗘瀽涓婇潰渚嬪瓙C錛?br>#pragma pack (2) /*鎸囧畾鎸?瀛楄妭瀵歸綈*/
struct C
{
    char b;
    int a;
    short c;
};
#pragma pack () /*鍙栨秷鎸囧畾瀵歸綈錛屾仮澶嶇己鐪佸榻?/
絎?涓涓彉閲廱鐨勮嚜韜榻愬間負1錛屾寚瀹氬榻愬間負2錛屾墍浠ワ紝鍏舵湁鏁堝榻愬間負1錛屽亣璁綜浠?x0000寮濮嬶紝閭d箞b瀛樻斁鍦?x0000錛岀鍚?x0000%1= 0;絎簩涓彉閲忥紝鑷韓瀵歸綈鍊間負4錛屾寚瀹氬榻愬間負2錛屾墍浠ユ湁鏁堝榻愬間負2錛屾墍浠ラ『搴忓瓨鏀懼湪0x0002銆?x0003銆?x0004銆?x0005鍥涗釜榪炵畫 瀛楄妭涓紝絎﹀悎0x0002%2=0銆傜涓変釜鍙橀噺c鐨勮嚜韜榻愬間負2錛屾墍浠ユ湁鏁堝榻愬間負2錛岄『搴忓瓨鏀?br>鍦?x0006銆?x0007涓紝絎﹀悎 0x0006%2=0銆傛墍浠ヤ粠0x0000鍒?x00007鍏卞叓瀛楄妭瀛樻斁鐨勬槸C鐨勫彉閲忋傚張C鐨勮嚜韜榻愬間負4錛屾墍浠鐨勬湁鏁堝榻愬間負2銆傚張8%2=0,C 鍙崰鐢?x0000鍒?x0007鐨勫叓涓瓧鑺傘傛墍浠izeof(struct C)=8.

鍥?濡備綍淇敼緙栬瘧鍣ㄧ殑榛樿瀵歸綈鍊?

1.鍦╒C IDE涓紝鍙互榪欐牱淇敼錛歔Project]|[Settings],c/c++閫夐」鍗ategory鐨凜ode Generation閫夐」鐨凷truct Member Alignment涓慨鏀癸紝榛樿鏄?瀛楄妭銆?br>2.鍦ㄧ紪鐮佹椂錛屽彲浠ヨ繖鏍峰姩鎬佷慨鏀癸細#pragma pack .娉ㄦ剰:鏄痯ragma鑰屼笉鏄痯rogma.

浜?閽堝瀛楄妭瀵歸綈,鎴戜滑鍦ㄧ紪紼嬩腑濡備綍鑰冭檻?


    濡傛灉鍦ㄧ紪紼嬬殑鏃跺欒鑰冭檻鑺傜害絀洪棿鐨勮瘽,閭d箞鎴戜滑鍙渶瑕佸亣瀹氱粨鏋勭殑棣栧湴鍧鏄?,鐒跺悗鍚勪釜鍙橀噺鎸夌収涓婇潰鐨勫師鍒欒繘琛屾帓鍒楀嵆鍙?鍩烘湰鐨勫師鍒欏氨鏄妸緇撴瀯涓殑鍙橀噺鎸夌収 綾誨瀷澶у皬浠庡皬鍒板ぇ澹版槑,灝介噺鍑忓皯涓棿鐨勫~琛ョ┖闂?榪樻湁涓縐嶅氨鏄負浜嗕互絀洪棿鎹㈠彇鏃墮棿鐨勬晥鐜?鎴戜滑鏄劇ず鐨勮繘琛屽~琛ョ┖闂磋繘琛屽榻?姣斿:鏈変竴縐嶄嬌鐢ㄧ┖闂存崲鏃墮棿鍋?娉曟槸鏄懼紡鐨勬彃鍏eserved鎴愬憳錛?br>         struct A{
           char a;
           char reserved[3];//浣跨敤絀洪棿鎹㈡椂闂?br>           int b;
}

reserved鎴愬憳瀵規垜浠殑紼嬪簭娌℃湁浠涔堟剰涔?瀹冨彧鏄搗鍒板~琛ョ┖闂翠互杈懼埌瀛楄妭瀵歸綈鐨勭洰鐨?褰撶劧鍗充嬌涓嶅姞榪欎釜鎴愬憳閫氬父緙栬瘧鍣ㄤ篃浼氱粰鎴戜滑鑷姩濉ˉ瀵歸綈,鎴戜滑鑷繁鍔犱笂瀹冨彧鏄搗鍒版樉寮忕殑鎻愰啋浣滅敤.

鍏?瀛楄妭瀵歸綈鍙兘甯︽潵鐨勯殣鎮?

    浠g爜涓叧浜庡榻愮殑闅愭偅錛屽緢澶氭槸闅愬紡鐨勩傛瘮濡傚湪寮哄埗綾誨瀷杞崲鐨勬椂鍊欍備緥濡傦細
unsigned int i = 0x12345678;
unsigned char *p=NULL;
unsigned short *p1=NULL;

p=&i;
*p=0x00;
p1=(unsigned short *)(p+1);
*p1=0x0000;
鏈鍚庝袱鍙ヤ唬鐮侊紝浠庡鏁拌竟鐣屽幓璁塊棶unsignedshort鍨嬪彉閲忥紝鏄劇劧涓嶇鍚堝榻愮殑瑙勫畾銆?br>鍦▁86涓婏紝綾諱技鐨勬搷浣滃彧浼氬獎鍝嶆晥鐜囷紝浣嗘槸鍦∕IPS鎴栬卻parc涓婏紝鍙兘灝辨槸涓涓猠rror,鍥犱負瀹冧滑瑕佹眰蹇呴』瀛楄妭瀵歸綈.

涓?濡備綍鏌ユ壘涓庡瓧鑺傚榻愭柟闈㈢殑闂:

濡傛灉鍑虹幇瀵歸綈鎴栬呰祴鍊奸棶棰橀鍏堟煡鐪?br>1. 緙栬瘧鍣ㄧ殑big little绔緗?br>2. 鐪嬭繖縐嶄綋緋繪湰韜槸鍚︽敮鎸侀潪瀵歸綈璁塊棶
3. 濡傛灉鏀寔鐪嬭緗簡瀵歸綈涓庡惁,濡傛灉娌℃湁鍒欑湅璁塊棶鏃墮渶瑕佸姞鏌愪簺鐗規畩鐨勪慨楗版潵鏍囧織鍏剁壒孌婅闂搷浣溿?/p>

鍏?鐩稿叧鏂囩珷:杞嚜http://blog.csdn.net/goodluckyxl/archive/2005/10/17/506827.aspx

 ARM涓嬬殑瀵歸綈澶勭悊
from DUI0067D_ADS1_2_CompLib

3.13 type  qulifiers

鏈夐儴鍒嗘憳鑷狝RM緙栬瘧鍣ㄦ枃妗e榻愰儴鍒?/p>

瀵歸綈鐨勪嬌鐢?
1.__align(num)
   榪欎釜鐢ㄤ簬淇敼鏈楂樼駭鍒璞$殑瀛楄妭杈圭晫銆傚湪姹囩紪涓嬌鐢↙DRD鎴栬匰TRD鏃?br>   灝辮鐢ㄥ埌姝ゅ懡浠_align(8)榪涜淇グ闄愬埗銆傛潵淇濊瘉鏁版嵁瀵硅薄鏄浉搴斿榻愩?br>   榪欎釜淇グ瀵硅薄鐨勫懡浠ゆ渶澶ф槸8涓瓧鑺傞檺鍒?鍙互璁?瀛楄妭鐨勫璞¤繘琛?瀛楄妭
   瀵歸綈,浣嗘槸涓嶈兘璁?瀛楄妭鐨勫璞?瀛楄妭瀵歸綈銆?br>   __align鏄瓨鍌ㄧ被淇敼,浠栧彧淇グ鏈楂樼駭綾誨瀷瀵硅薄涓嶈兘鐢ㄤ簬緇撴瀯鎴栬呭嚱鏁板璞°?br>  
2.__packed
  __packed鏄繘琛屼竴瀛楄妭瀵歸綈
  1.涓嶈兘瀵筽acked鐨勫璞¤繘琛屽榻?br>  2.鎵鏈夊璞$殑璇誨啓璁塊棶閮借繘琛岄潪瀵歸綈璁塊棶
  3.float鍙婂寘鍚玣loat鐨勭粨鏋勮仈鍚堝強鏈敤__packed鐨勫璞″皢涓嶈兘瀛楄妭瀵歸綈
  4.__packed瀵瑰眬閮ㄦ暣褰㈠彉閲忔棤褰卞搷
  5.寮哄埗鐢眜npacked瀵硅薄鍚憄acked瀵硅薄杞寲鏄湭瀹氫箟,鏁村艦鎸囬拡鍙互鍚堟硶瀹?br>  涔変負packed銆?br>     __packed int* p;  //__packed int 鍒欐病鏈夋剰涔?br>  6.瀵歸綈鎴栭潪瀵歸綈璇誨啓璁塊棶甯︽潵闂
  __packed struct STRUCT_TEST
 {
  char a;
  int b;
  char c;
 }  ;    //瀹氫箟濡備笅緇撴瀯姝ゆ椂b鐨勮搗濮嬪湴鍧涓瀹氭槸涓嶅榻愮殑
         //鍦ㄦ爤涓闂産鍙兘鏈夐棶棰?鍥犱負鏍堜笂鏁版嵁鑲畾鏄榻愯闂甗from CL]
//灝嗕笅闈㈠彉閲忓畾涔夋垚鍏ㄥ眬闈欐佷笉鍦ㄦ爤涓?
static char* p;
static struct STRUCT_TEST a;
void Main()
{
 __packed int* q;  //姝ゆ椂瀹氫箟鎴恄_packed鏉ヤ慨楗板綋鍓峲鎸囧悜涓洪潪瀵歸綈鐨勬暟鎹湴鍧涓嬮潰鐨勮闂垯鍙互

 p = (char*)&a;         
 q = (int*)(p+1);     
 
 *q = 0x87654321;
/*  
寰楀埌璧嬪肩殑姹囩紪鎸囦護寰堟竻妤?br>ldr      r5,0x20001590 ; = #0x12345678
[0xe1a00005]   mov      r0,r5
[0xeb0000b0]   bl       __rt_uwrite4  //鍦ㄦ澶勮皟鐢ㄤ竴涓啓4byte鐨勬搷浣滃嚱鏁?
     
[0xe5c10000]   strb     r0,[r1,#0]   //鍑芥暟榪涜4嬈trb鎿嶄綔鐒跺悗榪斿洖淇濊瘉浜嗘暟鎹紜殑璁塊棶
[0xe1a02420]   mov      r2,r0,lsr #8
[0xe5c12001]   strb     r2,[r1,#1]
[0xe1a02820]   mov      r2,r0,lsr #16
[0xe5c12002]   strb     r2,[r1,#2]
[0xe1a02c20]   mov      r2,r0,lsr #24
[0xe5c12003]   strb     r2,[r1,#3]
[0xe1a0f00e]   mov      pc,r14
*/

/*
濡傛灉q娌℃湁鍔燺_packed淇グ鍒欐眹緙栧嚭鏉ユ寚浠ゆ槸榪欐牱鐩存帴浼氬鑷村鍦板潃澶勮闂け璐?br>[0xe59f2018]   ldr      r2,0x20001594 ; = #0x87654321
[0xe5812000]   str      r2,[r1,#0]
*/

//榪欐牱鍙互寰堟竻妤氱殑鐪嬪埌闈炲榻愯闂槸濡備綍浜х敓閿欒鐨?br>//浠ュ強濡備綍娑堥櫎闈炲榻愯闂甫鏉ラ棶棰?br>//涔熷彲浠ョ湅鍒伴潪瀵歸綈璁塊棶鍜屽榻愯闂殑鎸囦護宸紓瀵艱嚧鏁堢巼闂
}


]]>
淇勭綏鏂柟鍧梀1.2http://www.shnenglu.com/szhoftuncun/archive/2008/11/16/67025.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Sat, 15 Nov 2008 16:22:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2008/11/16/67025.htmlhttp://www.shnenglu.com/szhoftuncun/comments/67025.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2008/11/16/67025.html#Feedback2http://www.shnenglu.com/szhoftuncun/comments/commentRss/67025.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/67025.html緇х畫涓婁釜鐗堟湰淇敼浜嗕竴浜?/span>bug錛岀劧鍚庣編鍖栦簡涓涓嬨?/span>

鍙戠幇鑷繁鐨勫緹庤涓嶅拫鐨勶紝淇鴻寰楁紓浜殑浜哄瑙夊緱涓嶆紓浜傝繕鏄収鐫澶у瑕佹眰鐨勭敾涓涓?/span>

涓昏瑙e喅鐨勯棶棰樻槸錛岃繖嬈¤鍒楅兘鐢ㄥ畯琛ㄧず錛岃繖鏍峰彲浠ヤ慨鏀硅鍒楋紝紿楀彛澶у皬涔熷姩鎬佹敼鍙樸?/span>

鍙﹀闀挎潯鏃嬭漿鍙樻垚Z鍨嬮棶棰樹篃瑙e喅錛屼富瑕佹槸鍙栨ā鐨勬椂鍊欑粫鍥炲幓浜嗐?/span>

鍏朵腑鏈閲嶈鐨勮綆楁槸瑙e喅浜嗗埛鏂伴棯鐑侀棶棰橈紝灝界HAM2008鎸囩偣榪囷紝濮嬬粓娌″仛鎴愶紝榪欐vczh璇翠簡涓鍙ヨ瘽灝辯偣閱掍簡鎴戙傛牴鏈笉搴旇浣跨敤InvalidateRect鍑芥暟錛岀洿鎺ョ敾錛岀劧鍚庣敤緙撳啿DC灝卞彲浠ヤ簡銆?br>

VOID OnPaint()
{
    HDC hdc 
= GetDC(hWnd);
    HDC bitmap_dc 
= CreateCompatibleDC(hdc);
    HBITMAP bitmap 
= CreateCompatibleBitmap(hdc,1024,768);
    SelectObject(bitmap_dc,bitmap);
    
   
/********************************************
   DrawBlock
   ********************************************
*/

   
int x = tetris.GetX();
   
int y = tetris.GetY();

   
for(int i=0; i<4++i)
   
{
       
for(int j=0; j<4++j)
       
{
           
if(current_block[i][j] == 1)
           
{
               DrawBlock(bitmap_dc,y
+i+1,x+j+1,3,3,tetris.GetColor(),RGB(0,0,0));
           }

       }

   }


   
/*****************************************
   *DrawContainer
   *****************************************
*/

   
for(int i=0; i<ROWS; ++i)
   
{
       
for(int j=0; j<COLS; ++j)
       
{
           
if(Container[i][j] == 1)
           
{
               DrawBlock(bitmap_dc,i
+1,j+1,3,3,ColorTable[i][j],RGB(0,0,0));
           }

       }

   }


   BitBlt(hdc,
0,0,1024,768,bitmap_dc,0,0,SRCCOPY);
   DeleteDC(bitmap_dc);
   DeleteObject(bitmap);
   ReleaseDC(hWnd,hdc);
}

浠ヤ笂灝辨槸GDI緙撳啿鐨勪富瑕佸疄鐜頒唬鐮併?br>


鍙墽琛屾枃浠朵笅杞?/a>
浠g爜榪樻槸絳夊叏閮ㄥ畬鍠勫悗涓婁紶鍚с俁edist璇瘋嚜琛屼笅杞姐?/span>
浠g爜浼拌瑕佹湁澶х殑鏀瑰姩錛屾劅瑙夌幇鍦ㄧ殑浠g爜娌′竴鐐笴++鐨勫懗閬撱?br>鏈夌偣綆鍗曪紝鐢ㄩ檲鍧ょ殑璇濊灝辨槸鎵╁睍鎬т笉濂姐?

]]>
STL瀛︿範鎽樿涔嬪簭鍒楀紡瀹瑰櫒http://www.shnenglu.com/szhoftuncun/archive/2008/09/07/61219.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Sun, 07 Sep 2008 07:24:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2008/09/07/61219.htmlhttp://www.shnenglu.com/szhoftuncun/comments/61219.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2008/09/07/61219.html#Feedback0http://www.shnenglu.com/szhoftuncun/comments/commentRss/61219.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/61219.html
#include<iostream>
#include
<vector>
using namespace std;

void Print(vector<int>& vec)
{
    
for(int i = 0; i < vec.size(); ++i)cout<<' '<<vec[i];
    cout
<<endl;
}


int main()
{
    vector
<int> first;
    vector
<int> second(41000);
    vector
<int> third(second.begin() + 2, second.end());
    vector
<int> forth(third);

    vector
<int>::iterator it;

    
int val[] = {1,2,3,4};
    vector
<int> fifth(val, val + sizeof(val) / sizeof(val[0]));

    cout
<<"First:";
    Print(first);
    cout
<<"Second:";
    Print(second);
    cout
<<"Third:";
    Print(third);
    cout
<<"Forth:";
    Print(forth);
    cout
<<"Fifth:";
    Print(fifth);

    first.swap(fifth);
    cout
<<"First:";
    Print(first);

    first.push_back(
12);
    cout
<<"First:";
    Print(first);

    it 
= first.begin() + 2;
    first.erase(it,first.end());
    cout
<<"First:";
    Print(first);

    it 
= first.begin();
    first.insert(it,
100);
    cout
<<"First:";
    Print(first);

    system(
"pause");
    
return 0;
}
緇撴灉錛?br>
Deque鎿嶄綔浠g爜綾諱技銆?br>浼樺娍錛氭瘮涔媀ector鍦ㄥご閮ㄦ彃鍏ュ垹闄ゅ厓绱犱篃鏈夊緢楂樻晥鐜囥備篃鏀寔榪唬鍣ㄩ殢鏈鴻闂備笉榪囧厓绱犲湪鍐呭瓨涓笉榪炵畫銆?br>
List鎿嶄綔鍩烘湰鐩稿悓涓嶈繃澶氫簡涓浜涘姛鑳?br>浼樺娍錛氶珮鏁堥亶鍘嗗厓绱狅紝甯擱噺鏃墮棿鎻掑叆鍒犻櫎浠繪剰浣嶇疆鍏冪礌銆?br>
#include<iostream>
#include
<list>
using namespace std;

void Print(list<int>& ls)
{
    list
<int>::iterator it = ls.begin();
    
for(; it != ls.end(); ++it)cout<<' '<<*it;
    cout
<<endl;
}


void Print(list<double>& ls)
{
    list
<double>::iterator it = ls.begin();
    
for(; it != ls.end(); ++it)cout<<' '<<*it;
    cout
<<endl;
}


int main()
{
    list
<int> first;
    list
<int> second(41000);

    list
<int>::iterator it;

    
double first_val[] = {1.0,3.0,2.0,4.0};
    list
<double> third(first_val, first_val + sizeof(first_val) / sizeof(first_val[0]));

    
double sencond_val[] = {1.1,4.3,1.4,2.9};
    list
<double> fourth(sencond_val, sencond_val + sizeof(sencond_val)/sizeof(sencond_val[0]));

    it 
= first.begin();
    first.insert(it,
100);
    cout
<<"First:";
    Print(first);

    it 
= first.begin();
    first.splice(it,second);
//splice鍥涗釜鍙傛暟錛岀涓涓弬鏁版槸鎻掑叆鐨勪綅緗紝絎簩涓槸鎻掑叆婧愶紝絎笁鍥涗釜鍙傛暟鎸囧畾鑼冨洿
    cout<<"First:";
    Print(first);

    first.remove(
100);
    cout
<<"First:";
    Print(first);

    third.sort();
    fourth.sort();
    cout
<<"Third:";
    Print(third);
    cout
<<"Fourth:";
    Print(fourth);

    third.merge(fourth);
    cout
<<"Third:";
    Print(third);

    system(
"pause");
    
return 0;
}
緇撴灉錛?br>
splice鍦ㄤ唬鐮佷腑宸茬粡璇存槑錛宮erge鍑芥暟鍚堝茍涓や釜list鑰屼笖鏄寜鐓т粠灝忓埌澶х殑欏哄簭錛宮erge鏈夊彟涓涓増鏈寘鍚袱涓弬鏁幫紝鍙︿竴涓槸涓涓?br>榪斿洖bool綾誨瀷鐨勫嚱鏁幫紝璇存槑浜嗘瘮杈冭鍒欍傜敤娉曠浉鍚屻傚彟澶栦竴浜涘嚱鏁頒嬌鐢ㄦ瘮杈冪畝鍗曘?br>璇ョ被絎旇鍧囧弬鑰冿細www.cplusplus.com

]]>
[zt]C榪愯搴撴蹇?/title><link>http://www.shnenglu.com/szhoftuncun/archive/2008/08/31/60520.html</link><dc:creator>娌堣嚮璞?foxtail)</dc:creator><author>娌堣嚮璞?foxtail)</author><pubDate>Sun, 31 Aug 2008 12:59:00 GMT</pubDate><guid>http://www.shnenglu.com/szhoftuncun/archive/2008/08/31/60520.html</guid><wfw:comment>http://www.shnenglu.com/szhoftuncun/comments/60520.html</wfw:comment><comments>http://www.shnenglu.com/szhoftuncun/archive/2008/08/31/60520.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/szhoftuncun/comments/commentRss/60520.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/szhoftuncun/services/trackbacks/60520.html</trackback:ping><description><![CDATA[ 1)榪愯鏃跺簱灝辨槸   C   run-time   library錛屾槸   C   鑰岄潪   C++   璇█涓栫晫鐨勬蹇?鍙栬繖涓悕瀛楀氨鏄洜涓轟綘鐨?  C   紼嬪簭榪愯鏃墮渶瑕佽繖浜涘簱涓殑鍑芥暟.   <br>    <br>  2)C   璇█鏄墍璋撶殑“灝忓唴鏍?#8221;璇█錛屽氨鍏惰璦鏈韓鏉ヨ寰堝皬錛堜笉澶氱殑鍏抽敭瀛楋紝紼嬪簭嫻佺▼鎺у埗錛屾暟鎹被鍨嬬瓑錛夛紱鎵浠ワ紝C   璇█鍐呮牳寮鍙戝嚭鏉ヤ箣鍚庯紝Dennis   Ritchie   鍜?  Brian   Kernighan   灝辯敤   C   鏈韓閲嶅啓浜?  90%   浠ヤ笂鐨?  UNIX   緋葷粺鍑芥暟錛屽茍涓旀妸鍏朵腑鏈甯哥敤鐨勯儴鍒嗙嫭绔嬪嚭鏉ワ紝褰㈡垚澶存枃浠跺拰瀵瑰簲鐨?  LIBRARY錛孋   run-time   library   灝辨槸榪欐牱褰㈡垚鐨勩?  <br>    <br>  3)闅忓悗錛岄殢鐫   C   璇█鐨勬祦琛岋紝鍚勪釜   C   緙栬瘧鍣ㄧ殑鐢熶駭鍟?涓綋/鍥綋閮介伒寰佺殑浼犵粺錛屽湪涓嶅悓騫沖彴涓婇兘鏈夌浉瀵瑰簲鐨?  Standard   Library錛屼絾澶ч儴鍒嗗疄鐜伴兘鏄笌鍚勪釜騫沖彴鏈夊叧鐨勩傜敱浜庡悇涓?  C   緙栬瘧鍣ㄥ   C   鐨勬敮鎸佸拰鐞嗚В鏈夊緢澶氬垎姝у拰寰鐨勫樊鍒紝鎵浠ュ氨鏈変簡   ANSI   C錛汚NSI   C   錛堜富瑙傛剰鍥句笂錛夎緇嗙殑瑙勫畾浜?  C   璇█鍚勪釜瑕佺礌鐨勫叿浣撳惈涔夊拰緙栬瘧鍣ㄥ疄鐜拌姹傦紝寮曡繘浜嗘柊鐨勫嚱鏁板0鏄庢柟寮忥紝鍚屾椂璁㈢珛浜?  Standard   Library   鐨勬爣鍑嗗艦寮忋傛墍浠榪愯鏃跺簱鐢辯紪璇戝櫒鐢熶駭鍟嗘彁渚涖傝嚦浜庣敱鍏朵粬鍘傚晢/涓漢/鍥綋鎻愪緵鐨勫ご鏂囦歡鍜屽簱鍑芥暟錛屽簲褰撶О涓虹涓夋柟   C   榪愯搴擄紙Third   party   C   run-time   libraries錛夈?  <br>    <br>  4)C   run-time   library閲岄潰鍚湁鍒濆鍖栦唬鐮侊紝榪樻湁閿欒澶勭悊浠g爜(渚嬪divide   by   zero澶勭悊)銆備綘鍐欑殑紼嬪簭鍙互娌℃湁math搴擄紝紼嬪簭鐓ф牱榪愯錛屽彧鏄笉鑳藉鐞嗗鏉傜殑鏁板榪愮畻錛屼笉榪囧鏋滄病鏈変簡C   run-time搴擄紝main()灝變笉浼氳璋冪敤錛宔xit()涔熶笉鑳借鍝嶅簲銆傚洜涓篊   run-time   library鍖呭惈浜咰紼嬪簭榪愯鐨勬渶鍩烘湰鍜屾渶甯哥敤鐨勫嚱鏁般?  <br>    <br>  5)鍒頒簡   C++   涓栫晫閲岋紝鏈夊彟澶栦竴涓蹇?Standard   C++   Library,瀹冨寘鎷簡涓婇潰鎵璇寸殑   C   run-time   library   鍜?  STL銆傚寘鍚?  C   run-time   library   鐨勫師鍥犲緢鏄庢樉錛孋++   鏄?  C   鐨勮秴闆嗭紝娌℃湁鐞嗙敱鍐嶉噸鏂版潵涓涓?  C++   run-time   library.   VC閽堝C++   鍔犲叆鐨凷tandard   C++   Library涓昏鍖呮嫭錛歀IBCP.LIB,   LIBCPMT.LIB鍜?  MSVCPRT.LIB   <br>    <br>  6)Windows鐜涓嬶紝VC鎻愪緵鐨?  C   run-time   library鍙堝垎涓哄姩鎬佽繍琛屾椂搴撳拰闈欐佽繍琛屾椂搴撱?  <br>  鍔ㄦ佽繍琛屾椂搴撲富瑕佹槸DLL搴撴枃浠秏svcrt.dll(or   MSVCRTD.DLL   for   debug   build),瀵瑰簲鐨処mport   library鏂囦歡鏄疢SVCRT.LIB(MSVCRTD.LIB   for   debug   build)   <br>  闈欐佽繍琛屾椂搴?release鐗?瀵瑰簲鐨勪富瑕佹枃浠舵槸錛?  <br>  LIBC.LIB   (Single   thread   static   library,   retail   version)   <br>  LIBCMT.LIB   (Multithread   static   library,   retail   version)   <br>    <br>  msvcrt.dll鎻愪緵鍑犲崈涓狢鍑芥暟錛屽嵆浣挎槸鍍弍rintf榪欎箞浣庣駭鐨勫嚱鏁伴兘鍦╩svcrt.dll閲屻傚叾瀹炰綘鐨勭▼搴忚繍琛屾椂錛屽緢澶т竴閮ㄥ垎鏃墮棿鏃跺湪榪欎簺榪愯搴撻噷榪愯銆傚湪浣犵殑紼嬪簭(release鐗?琚紪璇戞椂錛孷C浼氭牴鎹綘鐨勭紪璇戦夐」(鍗曠嚎紼嬨佸綰跨▼鎴朌LL)鑷姩灝嗙浉搴旂殑榪愯鏃跺簱鏂囦歡(libc.lib,libcmt.lib鎴朓mport   library   msvcrt.lib)閾炬帴榪涙潵銆?  <br>    <br>  緙栬瘧鏃跺埌搴曞摢涓狢   run-time   library鑱斿叆浣犵殑紼嬪簭鍙栧喅浜庣紪璇戦夐」錛?  <br>  /MD,   /ML,   /MT,   /LD       (Use   Run-Time   Library)   <br>  浣犲彲浠C涓氳繃浠ヤ笅鏂規硶璁劇疆閫夋嫨鍝釜C   run-time   library鑱斿叆浣犵殑紼嬪簭錛?  <br>  To   find   these   options   in   the   development   environment,   click   Settings   on   the   Project   menu.   Then   click   the   C/C++   tab,   and   click   Code   Generation   in   the   Category   box.   See   the   Use   Run-Time   Library   drop-down   box.   <br>    <br>  浠庣▼搴忓彲縐繪鎬ц冭檻,濡傛灉涓ゅ嚱鏁伴兘鍙畬鎴愪竴縐嶅姛鑳斤紝閫夎繍琛屾椂搴撳嚱鏁板ソ,鍥犱負鍚勪釜   C   緙栬瘧鍣ㄧ殑鐢熶駭鍟嗗鏍囧噯C   Run-time   library鎻愪緵浜嗙粺涓鐨勬敮鎸?   <img src ="http://www.shnenglu.com/szhoftuncun/aggbug/60520.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/szhoftuncun/" target="_blank">娌堣嚮璞?foxtail)</a> 2008-08-31 20:59 <a href="http://www.shnenglu.com/szhoftuncun/archive/2008/08/31/60520.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>淇勭綏鏂柟鍧?/title><link>http://www.shnenglu.com/szhoftuncun/archive/2008/08/06/58183.html</link><dc:creator>娌堣嚮璞?foxtail)</dc:creator><author>娌堣嚮璞?foxtail)</author><pubDate>Wed, 06 Aug 2008 14:14:00 GMT</pubDate><guid>http://www.shnenglu.com/szhoftuncun/archive/2008/08/06/58183.html</guid><wfw:comment>http://www.shnenglu.com/szhoftuncun/comments/58183.html</wfw:comment><comments>http://www.shnenglu.com/szhoftuncun/archive/2008/08/06/58183.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/szhoftuncun/comments/commentRss/58183.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/szhoftuncun/services/trackbacks/58183.html</trackback:ping><description><![CDATA[     鎽樿: 絎竴嬈″啓淇勭綏鏂柟鍧楋紝瀹屽叏鏄寜鐓ц嚜宸辯殑鎯蟲硶鍋氱殑銆傚仛瀹屼簡寰堝鎬備及璁℃槸鎸夌収鐩稿鍧愭爣鏉ョ畻錛屽ソ澶氱殑鍒嗘敮璇彞鎶婅嚜宸遍兘鎼炴檿浜嗐傛墍浠ュ喅瀹氭斁寮冧簡錛岃創鍑烘潵浠ョキ濂犮傝璁$殑鑽夌ǹ鏄繖鏍風殑 媯嬪瓙璁板綍鐘舵?媯嬬洏鏍規嵁媯嬪瓙鐘舵佽繘琛屽垽鏂拰緇樺埗 涓昏媯嫻嬶細 瓚婄晫媯嫻嬶細姣忔宸︾Щ鎴栬呭彸縐繪椂媯嫻嬶紙鍦ㄨ竟鐣屽唴鍒欑Щ鍔ㄥ惁鍒欎笉鍔級OK 瑙﹀簳媯嫻嬶細姣忔涓嬮檷鏃舵嫻婳K錛屼篃灝辨槸鍦ㄦ椂閽熻褰曚竴嬈℃椂鎺㈡祴銆?娑堣媯嫻嬶細瑙﹀簳瑙﹀彂鏃舵嫻?鏃嬭漿媯嫻嬶細...  <a href='http://www.shnenglu.com/szhoftuncun/archive/2008/08/06/58183.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/szhoftuncun/aggbug/58183.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/szhoftuncun/" target="_blank">娌堣嚮璞?foxtail)</a> 2008-08-06 22:14 <a href="http://www.shnenglu.com/szhoftuncun/archive/2008/08/06/58183.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>scintilla澶存枃浠秔latform闃呰http://www.shnenglu.com/szhoftuncun/archive/2008/07/21/56741.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Mon, 21 Jul 2008 03:55:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2008/07/21/56741.htmlhttp://www.shnenglu.com/szhoftuncun/comments/56741.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2008/07/21/56741.html#Feedback0http://www.shnenglu.com/szhoftuncun/comments/commentRss/56741.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/56741.html涓. 鏉′歡緙栬瘧鐨勪嬌鐢?br>浠ヤ笅鏄澶存枃浠剁敤鍒扮殑鍑犱釜瀹?br>
  

濡傛璁劇疆鍚勪釜瀹忓悗灝卞彲浠ヤ嬌鐢ㄤ簡

class Palette {
    
int used;
    
int size;
    ColourPair 
*entries;
#if PLAT_GTK//1涓虹湡錛岃繖閲屽彲浠ユ槸涓涓父閲忚〃杈懼紡
    
void *allocatedPalette; // GdkColor *
    int allocatedLen;
#endif

 

濡傛灉鏄?/span>GTK鐜鍒欓渶瑕佸彟澶栬緗袱涓彉閲忥紝涓涓槸鍒嗛厤璋冭壊鏉匡紝涓涓槸鎸囨槑闀垮害銆傝嫢涓?/span>win32鐜灝辨棤闇榪欎袱涓彉閲忎簡銆傝鏉′歡緙栬瘧鐢ㄤ簬鐢熸垚涓嶅悓騫沖彴涓嬬殑浜у搧銆傚嵆緙栬瘧浠g爜鐨勪笉鍚岄儴鍒嗭紝榪欏氨鏄澶勭悊鐨勪竴涓姛鑳姐?/span>

 

浜?Typedef鐨勪嬌鐢?br>


  涓嶅悓騫沖彴鐨勫叿浣撶被鍨嬩笉鍚岋紝鍙互鐢ㄨ鏂規硶瀹氫箟鏂扮殑鍚嶅瓧錛屼嬌紼嬪簭鏇存竻鏅般?br>
 

涓?鍏充簬棰滆壊鐨勭鐞嗙殑鍑犱釜綾?/strong>

ColourDesired

棰滆壊浣跨敤涓涓暱鏁村艦錛屼篃灝辨槸鐢?/span>32浣嶆潵鎻忚堪涓縐嶉鑹層?/span>

涓昏鐪嬩袱涓?/span>Set鍑芥暟鐨勫疄鐜幫紝絎竴涓槸浠庢寚瀹氱殑涓夊熀鑹茬殑鍊兼潵鏋勯犱竴縐嶉鑹層?br>

void Set(unsigned int red, unsigned int green, unsigned int blue) {
        co 
= red | (green << 8| (blue << 16);
    }


 

浠庝唬鐮佺湅鍑轟粠楂樺埌浣庝緷嬈℃槸bgr錛岃繖涓『搴忔濂芥槸RGB妯″瀷銆傞偅涔堟瘡涓煎崰8浣嶃傛誨叡鏄?/span>24浣嶏紝鏈楂樼殑8浣嶆垜鎯蟲槸alpha閫氶亾鍚с?/span>

 

鍙︿竴縐嶆槸浠庝竴涓暟緇勬瀯閫狅紝鐩墠鐚滄祴鏄?/span>xpm鏍煎紡鎻忚堪鐨勬暟緇勭殑閮ㄥ垎銆備粬棣栧厛鏈変釜鎻愬彇鍗佸叚榪涘埗鐪熷肩殑鍑芥暟浣滀負杈呭姪錛屾瘮杈冪畝鍗曘?/span>

static inline unsigned int ValueOfHex(const char ch) {
        
if (ch >= '0' && ch <= '9')
            
return ch - '0';
        
else if (ch >= 'A' && ch <= 'F')
            
return ch - 'A' + 10;
        
else if (ch >= 'a' && ch <= 'f')
            
return ch - 'a' + 10;
        
else
            
return 0;
    }


void Set(const char *val) {
        
if (*val == '#'{
            val
++;
        }

        unsigned 
int r = ValueOfHex(val[0]) * 16 + ValueOfHex(val[1]);
        unsigned 
int g = ValueOfHex(val[2]) * 16 + ValueOfHex(val[3]);
        unsigned 
int b = ValueOfHex(val[4]) * 16 + ValueOfHex(val[5]);
        Set(r, g, b);
    }


 

鍐嶇湅涓涓浘鏍囩殑鏁扮粍

鍙互鐪嬪埌璇ュ瓧絎﹀浘鍍忕敱涓夌絎﹀彿緇勬垚錛岀劧鍚庝笁縐嶇鍙風殑棰滆壊鏄劇劧鏄繖涔堟弿榪扮殑"    

c None",

". c #000000",

"+ c #808080",

 Set鍑芥暟閬囧埌涓涓?/span>#鍙峰氨寮濮嬫彁鍙栬綆楅鑹?/span>rgb鍊間簡銆傞偅涔堟暣涓浘鍍忓簲璇ユ槸閫氳繃榪欎釜Set鍑芥暟鐨勫嚑嬈¤皟鐢ㄨ繘琛岀殑銆?/span>ColourAllocated綾葷畝鍗曠殑鎶婁笂涓涓被姹傜殑鍊艱祴緇欎粬鐨勬垚鍛樸傚叿浣撲綔鐢ㄨ繕涓嶆竻妤氥?/span>ColourPair綾誨寘鍚互涓婁袱涓被鐨勫璞★紝榪欎簺鍙兘鏄璁′笂鐨勫師鍥犮傚洜涓哄叿浣撶殑鎿嶄綔閮芥槸ColourDesired瀹屾垚銆?/span>



]]>
C++涓殑寮哄埗綾誨瀷杞崲[杞琞http://www.shnenglu.com/szhoftuncun/archive/2008/07/14/56129.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Mon, 14 Jul 2008 13:32:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2008/07/14/56129.htmlhttp://www.shnenglu.com/szhoftuncun/comments/56129.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2008/07/14/56129.html#Feedback0http://www.shnenglu.com/szhoftuncun/comments/commentRss/56129.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/56129.html鏍囧噯c++涓富瑕佹湁鍥涚寮哄埗杞崲綾誨瀷榪愮畻絎︼細     

const_cast錛?/span>reinterpret_cast錛?/span>static_cast錛?/span>dynamic_cast絳夌瓑銆?nbsp;  

1錛?/span>static_cast<T*>(a)   

灝嗗湴鍧a杞崲鎴愮被鍨婽錛孴鍜宎蹇呴』鏄寚閽堛佸紩鐢ㄣ佺畻鏈被鍨嬫垨鏋氫婦綾誨瀷銆?nbsp;  

琛ㄨ揪寮?/span>static_cast<T*>(a), a鐨勫艱漿鎹負妯℃澘涓寚瀹氱殑綾誨瀷T銆傚湪榪愯鏃惰漿鎹㈣繃紼嬩腑錛屼笉榪涜綾誨瀷媯鏌ユ潵紜繚杞崲鐨勫畨鍏ㄦс?nbsp;  

渚嬪瓙錛?nbsp;  

class B  };   

class D : public B  };   

void f(B* pb, D* pd)   

{    

   D
* pd2 = static_cast<D*>(pb);        // 涓嶅畨鍏? pb鍙兘鍙槸B鐨勬寚閽?nbsp;  

   B
* pb2 = static_cast<B*>(pd);        // 瀹夊叏鐨?nbsp;  
    
}
 

  

2錛?/span>dynamic_cast<T*>(a)   

瀹屾垚綾誨眰嬈$粨鏋勪腑鐨勬彁鍗囥俆蹇呴』鏄竴涓寚閽堛佸紩鐢ㄦ垨鏃犵被鍨嬬殑鎸囬拡銆俛蹇呴』鏄喅瀹氫竴涓寚閽堟垨寮曠敤鐨勮〃杈懼紡銆?nbsp;  

琛ㄨ揪寮?/span>dynamic_cast<T*>(a) 灝哸鍊艱漿鎹負綾誨瀷涓篢鐨勫璞℃寚閽堛傚鏋滅被鍨婽涓嶆槸a鐨勬煇涓熀綾誨瀷錛岃鎿嶄綔灝嗚繑鍥炰竴涓┖鎸囬拡銆?nbsp;  

渚嬪瓙錛?nbsp;  

class A  };   

class B  };    

void f()   

{   

  A
* pa = new A;   

  B
* pb = new B;   

  
void* pv = dynamic_cast<A*>(pa);   

  
// pv 鐜板湪鎸囧悜浜嗕竴涓被鍨嬩負A鐨勫璞?nbsp;  
   

  pv 
= dynamic_cast<B*>(pb);   

  
// pv 鐜板湪鎸囧悜浜嗕竴涓被鍨嬩負B鐨勫璞?nbsp;  

}
  

 

3錛?/span>const_cast<T*>(a)   

鍘繪帀綾誨瀷涓殑甯擱噺錛岄櫎浜?/span>const鎴栦笉紼沖畾鐨勫彉鍧鏁幫紝T鍜宎蹇呴』鏄浉鍚岀殑綾誨瀷銆?nbsp;  

琛ㄨ揪寮?/span>const_cast<T*>(a)琚敤浜庝粠涓涓被涓幓闄や互涓嬭繖浜涘睘鎬э細constvolatile, 鍜?nbsp;__unaligned銆?nbsp;  

渚嬪瓙錛?  

class A  };   

void f()   

{   

 
const A *pa = new A;//const瀵硅薄   

 A 
*pb;//闈瀋onst瀵硅薄   

//pb = pa; // 榪欓噷灝嗗嚭閿欙紝涓嶈兘灝哻onst瀵硅薄鎸囬拡璧嬪肩粰闈瀋onst瀵硅薄   

 pb 
= const_cast<A*>(pa); // 鐜板湪OK浜?nbsp;  

..   }
  

 

4錛?/span>reinterpret_cast<T*>(a)   

浠諱綍鎸囬拡閮藉彲浠ヨ漿鎹㈡垚鍏跺畠綾誨瀷鐨勬寚閽堬紝T蹇呴』鏄竴涓寚閽堛佸紩鐢ㄣ佺畻鏈被鍨嬨佹寚鍚戝嚱鏁扮殑鎸囬拡鎴栨寚鍚戜竴涓被鎴愬憳鐨勬寚閽堛?nbsp;  

琛ㄨ揪寮?/span>reinterpret_cast<T*>(a)鑳藉鐢ㄤ簬璇稿char* 鍒?nbsp;int*錛屾垨鑰匫ne_class* 鍒?nbsp;Unrelated_class*絳夌被浼艱繖鏍風殑杞崲錛屽洜姝ゅ彲鑳芥槸涓嶅畨鍏ㄧ殑銆?nbsp;  

渚嬪瓙錛?nbsp;  

 

class A  };   

class B  };   

void f()   

{   

  A
* pa = new A;   

  
void* pv = reinterpret_cast<A*>(pa);   

  
// pv 鐜板湪鎸囧悜浜嗕竴涓被鍨嬩負B鐨勫璞★紝榪欏彲鑳芥槸涓嶅畨鍏ㄧ殑   

     

}
  

 
鏈枃杞嚜http://www.libing.net.cn/read.php?520



]]>
typedef鐢ㄦ硶灝忕粨http://www.shnenglu.com/szhoftuncun/archive/2008/07/13/56051.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Sun, 13 Jul 2008 14:33:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2008/07/13/56051.htmlhttp://www.shnenglu.com/szhoftuncun/comments/56051.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2008/07/13/56051.html#Feedback2http://www.shnenglu.com/szhoftuncun/comments/commentRss/56051.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/56051.html

瀹規槗鍑洪敊鐨勫父鐢ㄧ敤娉曪紝鍋氫簡涓浜涙暣鐞嗐?br>
涓錛?/span>
璧峰埆鍚嶇殑涓ょ鐢ㄦ硶

1.       typedef (int *錛?nbsp;pInt;

2.       typedef   pInt (int *)

姣斿pInt a,b;

絎竴縐嶈〃紺猴細 int*a;int*b;

絎簩縐嶈〃紺猴細 int*a,b;

鎵浠ョ涓縐嶆洿鍍忎竴涓被鍨嬶紝絎簩縐嶆洿鍍忓畯銆?/span>

 

浜岋紟鏃у紡浠g爜涓0鏄庡璞?/span>

typedef struct tagPoint

{

   Int x;

   Int y;

}
POINT;

POINT a,b;

 

涓夛紟浠g爜綆鍖?/span>

涓哄鏉傜殑澹版槑瀹氫箟涓涓柊鐨勭畝鍗曠殑鍒悕

鏂規硶錛?/span>鍦ㄥ師鏉ョ殑澹版槑閲岄愭鐢ㄥ埆鍚嶆浛鎹竴閮ㄥ垎澶嶆潅澹版槑錛屽姝ゅ驚鐜紝鎶婂甫鍙橀噺鍚嶇殑閮ㄥ垎鐣欏埌鏈鍚庢浛鎹紝寰楀埌鐨勫氨鏄師澹版槑鐨勬渶綆鍖栫増

typedef int (*PF) (const char *const char *);

榪欎釜澹版槑寮曞叆浜?/span> PF 綾誨瀷浣滀負鍑芥暟鎸囬拡鐨勫悓涔夊瓧錛岃鍑芥暟鏈変袱涓?/span> const char * 綾誨瀷鐨勫弬鏁頒互鍙婁竴涓?/span> int 綾誨瀷鐨勮繑鍥炲箋?/span>

 

濡傛灉瑕佷嬌鐢ㄤ笅鍒楀艦寮忕殑鍑芥暟澹版槑錛岄偅涔堜笂榪拌繖涓?/span> typedef 鏄笉鍙垨緙虹殑錛?/p>

PF Register(PF pf);

Register() 鐨勫弬鏁版槸涓涓?/span> PF 綾誨瀷鐨勫洖璋冨嚱鏁?/span>錛岃繑鍥炴煇涓嚱鏁扮殑鍦板潃錛屽叾緗插悕涓庡厛鍓嶆敞鍐岀殑鍚嶅瓧鐩稿悓銆傚鏋滀笉鐢?/span> typedef錛岄偅涔堜唬鐮佹槸榪欐牱鐨勶細

int (*Register (int (*pf)(const char *const char *)))(const char *const char *); 

 

 



]]>
鍏充簬鍐呭瓨妯″紡[鑺傞塢http://www.shnenglu.com/szhoftuncun/archive/2008/01/01/40195.html娌堣嚮璞?foxtail)娌堣嚮璞?foxtail)Tue, 01 Jan 2008 13:18:00 GMThttp://www.shnenglu.com/szhoftuncun/archive/2008/01/01/40195.htmlhttp://www.shnenglu.com/szhoftuncun/comments/40195.htmlhttp://www.shnenglu.com/szhoftuncun/archive/2008/01/01/40195.html#Feedback0http://www.shnenglu.com/szhoftuncun/comments/commentRss/40195.htmlhttp://www.shnenglu.com/szhoftuncun/services/trackbacks/40195.html闃呰鍏ㄦ枃

]]>
#pragma once涓?#ifndef鐨勫尯鍒?/title><link>http://www.shnenglu.com/szhoftuncun/archive/2007/10/28/35356.html</link><dc:creator>娌堣嚮璞?foxtail)</dc:creator><author>娌堣嚮璞?foxtail)</author><pubDate>Sun, 28 Oct 2007 09:53:00 GMT</pubDate><guid>http://www.shnenglu.com/szhoftuncun/archive/2007/10/28/35356.html</guid><wfw:comment>http://www.shnenglu.com/szhoftuncun/comments/35356.html</wfw:comment><comments>http://www.shnenglu.com/szhoftuncun/archive/2007/10/28/35356.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.shnenglu.com/szhoftuncun/comments/commentRss/35356.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/szhoftuncun/services/trackbacks/35356.html</trackback:ping><description><![CDATA[     鎽樿:   <a href='http://www.shnenglu.com/szhoftuncun/archive/2007/10/28/35356.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/szhoftuncun/aggbug/35356.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/szhoftuncun/" target="_blank">娌堣嚮璞?foxtail)</a> 2007-10-28 17:53 <a href="http://www.shnenglu.com/szhoftuncun/archive/2007/10/28/35356.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.ersunle.cn" target="_blank">国产日韩欧美久久</a>| <a href="http://www.sskca.cn" target="_blank">香蕉99久久国产综合精品宅男自 </a>| <a href="http://www.cnmango.cn" target="_blank">国产亚洲精午夜久久久久久</a>| <a href="http://www.disidai.cn" target="_blank">人人狠狠综合久久亚洲婷婷</a>| <a href="http://www.bb2y.cn" target="_blank">久久精品亚洲精品国产欧美</a>| <a href="http://www.qraw.cn" target="_blank">久久久久久亚洲Av无码精品专口</a>| <a href="http://www.baomintv.cn" target="_blank">国产精品xxxx国产喷水亚洲国产精品无码久久一区 </a>| <a href="http://www.xmgoogle.net.cn" target="_blank">色偷偷888欧美精品久久久</a>| <a href="http://www.zhaoziping.cn" target="_blank">久久婷婷五月综合色99啪ak</a>| <a href="http://www.ttwa.com.cn" target="_blank">久久水蜜桃亚洲av无码精品麻豆</a>| <a href="http://www.u3h1.cn" target="_blank">国产69精品久久久久99</a>| <a href="http://www.whchangxin.com.cn" target="_blank">精品国产日韩久久亚洲</a>| <a href="http://www.xfpz67.cn" target="_blank">欧美一区二区精品久久</a>| <a href="http://www.huadublog.cn" target="_blank">亚洲精品午夜国产VA久久成人</a>| <a href="http://www.c12252.cn" target="_blank">91精品国产综合久久香蕉</a>| <a href="http://www.ziximaker.cn" target="_blank">国产激情久久久久久熟女老人</a>| <a href="http://www.biezhuai.cn" target="_blank">香港aa三级久久三级</a>| <a href="http://www.easecorp.com.cn" target="_blank">人妻无码αv中文字幕久久琪琪布 人妻无码久久一区二区三区免费 人妻无码中文久久久久专区 </a>| <a href="http://www.so006.cn" target="_blank">成人久久免费网站</a>| <a href="http://www.me79.cn" target="_blank">精品无码久久久久久久久久</a>| <a href="http://www.vhxz.cn" target="_blank">97久久超碰国产精品旧版</a>| <a href="http://www.szjjls.cn" target="_blank">91麻豆国产精品91久久久</a>| <a href="http://www.gongyeyongbu.com.cn" target="_blank">99久久精品免费看国产一区二区三区 </a>| <a href="http://www.xiangyuesiji.cn" target="_blank">久久精品这里只有精99品</a>| <a href="http://www.cqxuexi.cn" target="_blank">日韩人妻无码一区二区三区久久</a>| <a href="http://www.gpci.cn" target="_blank">亚洲国产天堂久久综合</a>| <a href="http://www.enikl.cn" target="_blank">精品久久久久久国产三级</a>| <a href="http://www.songyuan163.net.cn" target="_blank">国产精品99久久精品</a>| <a href="http://www.yxwelding.com.cn" target="_blank">久久精品无码专区免费东京热</a>| <a href="http://www.qdtiandiyuan.cn" target="_blank">久久久久波多野结衣高潮</a>| <a href="http://www.wzwsbz.cn" target="_blank">亚洲欧美另类日本久久国产真实乱对白 </a>| <a href="http://www.xiangyuesiji.cn" target="_blank">精品久久国产一区二区三区香蕉</a>| <a href="http://www.czyhfzc.cn" target="_blank">7777久久亚洲中文字幕</a>| <a href="http://www.hifistudio.cn" target="_blank">久久亚洲美女精品国产精品</a>| <a href="http://www.2mo04k.cn" target="_blank">久久亚洲中文字幕精品一区</a>| <a href="http://www.h6cpi0.cn" target="_blank">久久午夜免费视频</a>| <a href="http://www.jobkey.com.cn" target="_blank">精品久久久久久久国产潘金莲 </a>| <a href="http://www.hbsannong.com.cn" target="_blank">久久精品一区二区国产</a>| <a href="http://www.pochai.cn" target="_blank">狠狠狠色丁香婷婷综合久久俺</a>| <a href="http://www.tingzei.cn" target="_blank">国产人久久人人人人爽</a>| <a href="http://www.reboc.cn" target="_blank">久久精品成人国产午夜</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>