锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品中文字,国内精品久久久久久影视8
,麻豆成人在线观看http://m.shnenglu.com/zzh/category/3739.htmlXiao.Zhu C++zh-cnSun, 25 May 2008 11:13:18 GMTSun, 25 May 2008 11:13:18 GMT60- 鍐呭瓨姹?MemPool)http://m.shnenglu.com/zzh/articles/19616.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:57:00 GMThttp://m.shnenglu.com/zzh/articles/19616.htmlhttp://m.shnenglu.com/zzh/comments/19616.htmlhttp://m.shnenglu.com/zzh/articles/19616.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19616.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19616.html
灝忕嫾娉細涓婃涔熷啓浜嗕竴涓畝鍗曠殑鍐呭瓨姹狅紝鏄嬌鐢⊿TL鐨刣eque鏉ョ鐞嗙殑錛屽疄鐜拌搗鏉ユ瘮杈冪畝鍗曪紝涓嶈繃鏈変釜緙虹偣灝辨槸鍙兘鍥哄畾鍒嗛厤澶у皬錛屾墍浠ラ渶瑕佹牴鎹粡楠屽間簨鍏堝垎閰嶅唴瀛樺ぇ灝忥紝鐒跺悗鎶婂唴瀛樺啀嬈″垝鍒嗕負絳夊ぇ鐨勫皬鐨勫唴瀛樹緵浣跨敤銆?br />姒傝堪
鍐呭瓨姹狅紙MemPool錛夋妧鏈鍙楁帹宕囥傛垜鐢╣oogle鎼滅儲浜嗕笅錛屾病鏈夋壘鍒版瘮杈冭緇嗙殑鍘熺悊鎬х殑鏂囩珷錛屾晠姝よˉ鍏呬竴涓傚彟澶栵紝琛ュ厖浜哹oost::pool緇勪歡涓庣粡鍏窶emPool鐨勫樊寮傘傚悓鏃朵篃鎻忚堪浜哅emPool鍦╯gi-stl/stlport涓殑榪愮敤銆?br />
聽
緇忓吀鐨勫唴瀛樻睜鎶鏈?br />聽
緇忓吀鐨勫唴瀛樻睜錛圡emPool錛夋妧鏈紝鏄竴縐嶇敤浜庡垎閰嶅ぇ閲忓ぇ灝忕浉鍚岀殑灝忓璞$殑鎶鏈傞氳繃璇ユ妧鏈彲浠ユ瀬澶у姞蹇唴瀛樺垎閰?閲婃斁榪囩▼銆備笅闈㈡垜浠緇嗚В閲婂叾涓殑濂ュ銆?br />聽
緇忓吀鐨勫唴瀛樻睜鍙秹鍙婁袱涓父閲忥細MemBlockSize銆両temSize錛堝皬瀵硅薄鐨勫ぇ灝忥紝浣嗕笉鑳藉皬浜庢寚閽堢殑澶у皬錛屽湪32浣嶅鉤鍙頒篃灝辨槸涓嶈兘灝忎簬4瀛楄妭錛夛紝浠ュ強涓や釜鎸囬拡鍙橀噺MemBlockHeader銆丗reeNodeHeader銆傚紑濮嬶紝榪欎袱涓寚閽堝潎涓虹┖銆?br />聽
class聽MemPool
{
private:
聽聽聽聽const聽int聽m_nMemBlockSize;
聽聽聽聽const聽int聽m_nItemSize;
聽聽聽聽struct聽_FreeNode聽{
聽聽聽聽聽聽聽聽_FreeNode*聽pPrev;
聽聽聽聽聽聽聽聽BYTE聽data[m_nItemSize聽-聽sizeof(_FreeNode*)];
聽聽聽聽};
聽聽聽聽struct聽_MemBlock聽{
聽聽聽聽聽聽聽聽_MemBlock*聽pPrev;
聽聽聽聽聽聽聽聽_FreeNode聽data[m_nMemBlockSize/m_nItemSize];
聽聽聽聽};
聽聽
聽聽聽聽_MemBlock*聽m_pMemBlockHeader;
聽聽聽聽_FreeNode*聽m_pFreeNodeHeader;
聽
public:
聽聽聽MemPool(int聽nItemSize,聽int聽nMemBlockSize聽=聽2048)
聽聽聽聽聽聽聽:聽m_nItemSize(nItemSize),聽m_nMemBlockSize(nMemBlockSize),
聽聽聽聽聽聽聽聽聽m_pMemBlockHeader(NULL),聽m_pFreeNodeHeader(NULL)
聽聽聽{
聽聽聽}
};
聽
鍏朵腑鎸囬拡鍙橀噺MemBlockHeader鏄妸鎵鏈夌敵璇風殑鍐呭瓨鍧楋紙MemBlock錛変覆鎴愪竴涓摼琛紝浠ヤ究閫氳繃瀹冨彲浠ラ噴鏀炬墍鏈夌敵璇風殑鍐呭瓨銆侳reeNodeHeader鍙橀噺鍒欐槸鎶婃墍鏈夎嚜鐢卞唴瀛樼粨鐐癸紙FreeNode錛変覆鎴愪竴涓摼銆?br />聽
榪?
孌佃瘽娑夊強涓や釜鍏抽敭姒傚康錛氬唴瀛樺潡錛圡emBlock錛夊拰鑷敱鍐呭瓨緇撶偣錛團reeNode錛夈傚唴瀛樺潡澶у皬涓鑸浐瀹氫負MemBlockSize瀛楄妭錛堥櫎鍘葷敤浠ュ緩
绔嬮摼琛ㄧ殑鎸囬拡澶栵級銆傚唴瀛樺潡鍦ㄧ敵璇蜂箣鍒濆氨琚垝鍒嗕負澶氫釜鍐呭瓨緇撶偣錛圢ode錛夛紝姣忎釜Node澶у皬涓郝營temSize錛堝皬瀵硅薄鐨勫ぇ灝忥級錛岃
MemBlockSize/ItemSize涓傝繖MemBlockSize/ItemSize涓唴瀛樼粨鐐瑰垰寮濮嬪叏閮ㄦ槸鑷敱鐨勶紝浠栦滑琚覆鎴愰摼琛ㄣ傛垜浠湅鐪?
鐢寵/閲婃斁鍐呭瓨榪囩▼錛屽氨寰堝鏄撴槑鐧借繖鏍峰仛鐨勭洰鐨勩?br />聽
鐢寵鍐呭瓨榪囩▼
浠g爜濡備笅錛?br />void*聽MemPool::malloc()聽聽聽聽//聽娌℃湁鍙傛暟
{
聽聽聽聽if聽(m_pFreeNodeHeader聽==聽NULL)
聽聽聽聽{
聽聽聽聽聽聽聽const聽int聽nCount聽=聽m_nMemBlockSize/m_nItemSize;
聽聽聽聽聽聽聽聽_MemBlock*聽pNewBlock聽=聽new聽_MemBlock;
聽聽聽聽聽聽聽聽pNewBlock->data[0].pPrev聽=聽NULL;
聽聽聽聽聽聽聽聽for聽(int聽i聽=聽1;聽i聽<聽nCount;聽++i)
聽聽聽聽聽聽聽聽聽聽聽聽pNewBlock->data[i].pPrev聽=聽&pNewBlock->data[i-1];
聽聽聽聽聽聽聽聽m_pFreeNodeHeader聽=聽&pNewBlock->data[nCount-1];
聽聽聽聽聽聽聽聽pNewBlock->pPrev聽=聽m_pMemBlock;
聽聽聽聽聽聽聽聽m_pMemBlock聽=聽pNewBlock;
聽聽聽聽}
聽聽聽聽void*聽pFreeNode聽=聽m_pFreeNodeHeader;
聽聽聽聽m_pFreeNodeHeader聽=聽m_pFreeNodeHeader->pPrev;
聽聽聽聽return聽pFreeNode;
}
聽
鍐呭瓨鐢寵榪囩▼鍒嗕負涓ょ鎯呭喌錛?br />
聽聽聽聽*聽鍦ㄨ嚜鐢卞唴瀛樼粨鐐歸摼琛紙FreeNodeList錛夐潪絀恒?br />聽聽聽聽聽聽鍦ㄦ鎯呭喌涓嬶紝Alloc榪囩▼鍙槸浠庨摼琛ㄤ腑鎽樹笅涓涓粨鐐圭殑榪囩▼銆?br />聽聽聽聽聽聽聽
聽聽聽聽*聽鍚﹀垯錛屾剰鍛崇潃闇瑕佷竴涓柊鐨勫唴瀛樺潡(MemBlock)銆?br />聽聽聽聽聽聽榪欎釜榪囩▼闇瑕佸皢鏂扮敵璇風殑MemBlock鍒囧壊鎴愬涓狽ode錛屽茍鎶婂畠浠覆璧鋒潵銆?br />聽聽聽聽聽聽MemPool鎶鏈殑寮閿涓昏鍦ㄨ繖銆?br />聽聽聽聽聽聽聽聽
閲婃斁鍐呭瓨榪囩▼
聽浠g爜濡備笅錛?br />void聽MemPool::free(void*聽p)
{
聽聽聽聽_FreeNode*聽pNode聽=聽(_FreeNode*)p;
聽聽聽聽pNode->pPrev聽=聽m_pFreeNodeHeader;
聽聽聽聽m_pFreeNodeHeader聽=聽pNode;
}
聽
閲婃斁榪囩▼鏋佸叾綆鍗曪紝鍙槸鎶婅閲婃斁鐨勭粨鐐規(guī)寕鍒拌嚜鐢卞唴瀛橀摼琛紙FreeNodeList錛夌殑寮澶村嵆鍙?br />聽
鎬ц兘鍒嗘瀽
MemPool鎶鏈敵璇峰唴瀛?閲婃斁鍐呭瓨鍧囨瀬鍏跺揩錛堟瘮AutoFreeAlloc鎱級銆傚叾鍐呭瓨鍒嗛厤榪囩▼澶氭暟鎯呭喌涓嬪鏉傚害涓篛(1)錛屼富瑕佸紑閿鍦‵reeNodeList涓虹┖闇瑕佺敓鎴愭柊鐨凪emBlock鏃躲傚唴瀛橀噴鏀捐繃紼嬪鏉傚害涓篛(1)銆?br />聽
聽
boost::pool
boost::pool鏄唴瀛樻睜鎶鏈殑鍙樼銆備富瑕佺殑鍙樺寲濡備笅錛?br />
聽
聽聽聽*聽MemBlock鏀逛負闈炲浐瀹氶暱搴?MemBlockSize)錛岃屾槸錛氱1嬈$敵璇鋒椂
m_nItemSize*32錛岀2嬈$敵璇鋒椂聽m_nItemSize*64錛岀3嬈$敵璇鋒椂m_nItemSize*128錛屼互姝ょ被鎺ㄣ備笉閲囩敤
鍥哄畾鐨凪emBlockSize錛岃岄噰鐢ㄨ繖縐嶅仛娉曢嫻嬫ā鍨嬶紙鏄殑錛岃繖鏄竴縐嶇敤鎴峰唴瀛橀渶姹傜殑棰勬祴妯″瀷錛屽叾瀹瀞td::vector鐨勫唴瀛樺闀夸害閲囩敤浜嗚妯?
鍨嬶級錛屾槸涓涓粏鑺備笂鐨勬敼鑹?br />聽聽聽聽聽聽聽
聽聽聽聽*聽澧炲姞浜唎rdered_free(void*聽p)聽鍑芥暟銆?br />
聽
聽聽聽聽聽ordered_free鍖哄埆浜巉ree鐨勬槸錛宖ree鎶婅閲婃斁鐨勭粨鐐規(guī)寕鍒拌嚜鐢卞唴瀛橀摼琛?
錛團reeNodeList錛夌殑寮澶達紝ordered_free鍒欏亣璁綟reeNodeList鏄湁搴忕殑錛屽洜姝や細閬嶅巻FreeNodeList鎶婅閲婃斁鐨?
緇撶偣鎻掑叆鍒板悎閫傜殑浣嶇疆銆?br />
聽聽聽聽聽聽鎴戜滑宸茬粡鐪嬪埌錛宖ree鐨勫鏉傚害鏄疧
(1)錛岄潪甯稿揩銆備絾璇鋒敞鎰弌rdered_free鏄瘮杈冭垂鐨勬搷浣滐紝鍏跺鏉傚害鏄疧(N)銆傝繖閲孨鏄疐reeNodeList鐨勫ぇ灝忋傚浜庝竴涓綣侀噴鏀?鐢?
璇風殑緋葷粺錛岃繖涓狽寰堝彲鑳芥槸涓ぇ鏁般傝繖涓猙oost鎻忚堪寰楀緢娓呮錛歨ttp:
//www.boost.org/libs/pool/doc/interfaces/pool.html聽
娉ㄦ剰錛氫笉瑕佽涓篵oost鎻愪緵ordered_free鏄姝や竴涓俱傚悗鏂囨垜浠細鍦ㄨ璁篵oost::object_pool鏃惰В閲婅繖涓鐐廣?br />聽
鍩轟簬鍐呭瓨姹犳妧鏈殑閫氱敤鍐呭瓨鍒嗛厤緇勪歡聽
聽
sgi-stl鎶婂唴瀛樻睜錛圡emPool錛夋妧鏈繘琛屽彂鎵厜澶э紝鐢ㄥ畠鏉ュ疄鐜板叾鏈鏍規(guī)湰鐨刟llocator銆?br />聽
鍏?
澶т綋鐨勬濇兂鏄紝寤虹珛16涓狹emPool錛?lt;=8瀛楄妭鐨勫唴瀛樼敵璇風敱0鍙稭emPool鍒嗛厤錛?lt;=16瀛楄妭鐨勫唴瀛樼敵璇風敱1鍙仿?
MemPool鍒嗛厤錛?lt;=24瀛楄妭鐨勫唴瀛樻湁2鍙稭emPool鍒嗛厤錛屼互姝ょ被鎺ㄣ傛渶鍚庯紝>128瀛楄妭鐨勫唴瀛樼敵璇風敱鏅氱殑malloc鍒嗛厤銆?br />娉ㄦ剰
浠ヤ笂浠g爜灞炰簬浼唬鐮侊紙struct聽_FreeNode銆乢MemBlock緙栬瘧閫氫笉榪囷級錛屽茍涓斿幓闄や簡鍑洪敊澶勭悊銆?img src ="http://m.shnenglu.com/zzh/aggbug/19616.html" width = "1" height = "1" />
]]> - 絎節(jié)绔狅紟鎸囬拡鐨勫畨鍏ㄩ棶棰?/title>http://m.shnenglu.com/zzh/articles/19613.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:47:00 GMThttp://m.shnenglu.com/zzh/articles/19613.htmlhttp://m.shnenglu.com/zzh/comments/19613.htmlhttp://m.shnenglu.com/zzh/articles/19613.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19613.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19613.html
鐪嬩笅闈㈢殑渚嬪瓙錛?/font>
聽
渚嬪崄涓冿細聽
chars='a';聽
int*ptr;聽
ptr=(int*)&s;聽
*ptr=1298錛浡?br />鎸?
閽坧tr鏄竴涓猧nt*綾誨瀷鐨勬寚閽堬紝瀹冩寚鍚戠殑綾誨瀷鏄痠nt銆傚畠鎸囧悜鐨勫湴鍧灝辨槸s鐨勯鍦板潃銆傚湪32浣嶇▼搴忎腑錛宻鍗犱竴涓瓧鑺傦紝int綾誨瀷鍗犲洓涓瓧鑺傘傛渶鍚庝竴鏉?
璇彞涓嶄絾鏀瑰彉浜唖鎵鍗犵殑涓涓瓧鑺傦紝榪樻妸鍜宻鐩鎬復鐨勯珮鍦板潃鏂瑰悜鐨勪笁涓瓧鑺備篃鏀瑰彉浜嗐傝繖涓変釜瀛楄妭鏄共浠涔堢殑錛熷彧鏈夌紪璇戠▼搴忕煡閬擄紝鑰屽啓紼嬪簭鐨勪漢鏄笉澶彲鑳界煡閬?
鐨勩備篃璁歌繖涓変釜瀛楄妭閲屽瓨鍌ㄤ簡闈炲父閲嶈鐨勬暟鎹紝涔熻榪欎笁涓瓧鑺傞噷姝eソ鏄▼搴忕殑涓鏉′唬鐮侊紝鑰岀敱浜庝綘瀵規(guī)寚閽堢殑椹檸搴旂敤錛岃繖涓変釜瀛楄妭鐨勫艱鏀瑰彉浜嗭紒榪欎細閫犳垚宕╂簝鎬?
鐨勯敊璇偮?br />璁╂垜浠啀鏉ョ湅涓渚嬶細聽
渚嬪崄鍏細聽
1銆俢hara;聽
2銆俰nt*ptr=&a;聽
...聽
...聽
3銆俻tr++;聽
4銆?ptr=115;聽
璇?
渚嬪瓙瀹屽叏鍙互閫氳繃緙栬瘧錛屽茍鑳芥墽琛屻備絾鏄湅鍒版病鏈夛紵絎?鍙ュ鎸囬拡ptr榪涜鑷姞1榪愮畻鍚庯紝ptr鎸囧悜浜嗗拰鏁村艦鍙橀噺a鐩擱偦鐨勯珮鍦板潃鏂瑰悜鐨勪竴鍧楀瓨鍌ㄥ尯銆傝繖鍧楀瓨鍌?
鍖洪噷鏄粈涔堬紵鎴戜滑涓嶇煡閬撱傛湁鍙兘瀹冩槸涓涓潪甯擱噸瑕佺殑鏁版嵁錛岀敋鑷沖彲鑳芥槸涓鏉′唬鐮併傝岀4鍙ョ珶鐒跺線榪欑墖瀛樺偍鍖洪噷鍐欏叆涓涓暟鎹紒榪欐槸涓ラ噸鐨勯敊璇傛墍浠ュ湪浣跨敤鎸囬拡
鏃訛紝紼嬪簭鍛樺績閲屽繀欏婚潪甯告竻妤氾細鎴戠殑鎸囬拡絀剁珶鎸囧悜浜嗗摢閲屻傚湪鐢ㄦ寚閽堣闂暟緇勭殑鏃跺欙紝涔熻娉ㄦ剰涓嶈瓚呭嚭鏁扮粍鐨勪綆绔拰楂樼鐣岄檺錛屽惁鍒欎篃浼氶犳垚綾諱技鐨勯敊璇偮?br />鍦?
鎸囬拡鐨勫己鍒剁被鍨嬭漿鎹細ptr1=(TYPE*)ptr2涓紝濡傛灉sizeof(ptr2鐨勭被鍨?澶т簬sizeof(ptr1鐨勭被鍨?錛岄偅涔堝湪浣跨敤鎸囬拡
ptr1鏉ヨ闂畃tr2鎵鎸囧悜鐨勫瓨鍌ㄥ尯鏃舵槸瀹夊叏鐨勩傚鏋渟izeof(ptr2鐨勭被鍨?灝忎簬sizeof(ptr1鐨勭被鍨?錛岄偅涔堝湪浣跨敤鎸囬拡ptr1鏉ヨ
闂畃tr2鎵鎸囧悜鐨勫瓨鍌ㄥ尯鏃舵槸涓嶅畨鍏ㄧ殑銆傝嚦浜庝負浠涔堬紝璇昏呯粨鍚堜緥鍗佷竷鏉ユ兂涓鎯籌紝搴旇浼氭槑鐧界殑銆?/font>

]]> - 絎竷绔犮傛寚閽堝拰鍑芥暟鐨勫叧緋?/title>http://m.shnenglu.com/zzh/articles/19611.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:46:00 GMThttp://m.shnenglu.com/zzh/articles/19611.htmlhttp://m.shnenglu.com/zzh/comments/19611.htmlhttp://m.shnenglu.com/zzh/articles/19611.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19611.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19611.html
鍙互鎶婁竴涓寚閽堝0鏄庢垚涓轟竴涓寚鍚戝嚱鏁扮殑鎸囬拡銆?/font>
聽
intfun1(char*,int);聽
int(*pfun1)(char*,int);聽
pfun1=fun1;聽
....聽
....聽
inta=(*pfun1)("abcdefg",7);//閫氳繃鍑芥暟鎸囬拡璋冪敤鍑芥暟銆偮?br />鍙互鎶婃寚閽堜綔涓哄嚱鏁扮殑褰㈠弬銆傚湪鍑芥暟璋冪敤璇彞涓紝鍙互鐢ㄦ寚閽堣〃杈懼紡鏉ヤ綔涓哄疄鍙傘偮?br />渚嬪崄涓夛細聽
intfun(char*);聽
inta;聽
charstr[]="abcdefghijklmn";聽
a=fun(str);聽
...聽
...聽
intfun(char*s)聽
{聽
intnum=0;聽
for(inti=0;i{聽
num+=*s;s++;聽
}聽
returnnum;聽
}聽
榪欎釜渚嬪瓙涓殑鍑芥暟fun緇熻涓涓瓧絎︿覆涓悇涓瓧絎︾殑ASCII鐮佸間箣鍜屻傚墠闈㈣浜嗭紝鏁扮粍鐨勫悕瀛椾篃鏄竴涓寚閽堛?/font>
鍦ㄥ嚱鏁拌皟鐢ㄤ腑錛屽綋鎶?span lang="EN-US">str浣滀負瀹炲弬浼犻掔粰褰㈠弬s鍚庯紝瀹為檯鏄妸str鐨勫間紶閫掔粰浜唖錛宻鎵鎸囧悜鐨勫湴鍧灝卞拰str鎵鎸囧悜鐨勫湴鍧涓鑷達紝浣嗘槸str鍜宻鍚勮嚜鍗犵敤鍚勮嚜鐨勫瓨鍌ㄧ┖闂淬?/span>
鍦ㄥ嚱鏁頒綋鍐呭s榪涜鑷姞1榪愮畻錛屽茍涓嶆剰鍛崇潃鍚屾椂瀵箂tr榪涜浜嗚嚜鍔?榪愮畻銆?/span>

]]> - 絎叓绔犮傛寚閽堢被鍨嬭漿鎹?/title>http://m.shnenglu.com/zzh/articles/19612.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:46:00 GMThttp://m.shnenglu.com/zzh/articles/19612.htmlhttp://m.shnenglu.com/zzh/comments/19612.htmlhttp://m.shnenglu.com/zzh/articles/19612.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19612.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19612.html
褰撴垜浠垵濮嬪寲涓涓寚閽堟垨緇欎竴涓寚閽堣祴鍊兼椂錛岃祴鍊煎彿鐨勫乏杈規(guī)槸涓涓寚閽堬紝璧嬪煎彿鐨勫彸杈規(guī)槸涓涓寚閽堣〃杈懼紡銆傚湪鎴戜滑鍓嶉潰鎵涓劇殑渚嬪瓙涓紝
緇濆ぇ澶氭暟鎯呭喌涓嬶紝鎸囬拡鐨勭被鍨嬪拰鎸囬拡琛ㄨ揪寮忕殑綾誨瀷鏄竴鏍風殑錛屾寚閽堟墍鎸囧悜鐨勭被鍨嬪拰鎸囬拡琛ㄨ揪寮忔墍鎸囧悜鐨勭被鍨嬫槸涓鏍風殑銆?/span>
聽
渚嬪崄鍥涳細聽
1銆俧loatf=12.3;聽
2銆俧loat*fptr=&f;聽
3銆俰nt*p;聽
鍦ㄤ笂闈㈢殑渚嬪瓙涓紝鍋囧鎴戜滑鎯寵鎸囬拡p鎸囧悜瀹炴暟f錛屽簲璇ユ庝箞鎼烇紵鏄敤涓嬮潰鐨勮鍙ュ悧錛熉?br />p=&f;聽
涓?
瀵廣傚洜涓烘寚閽坧鐨勭被鍨嬫槸int*錛屽畠鎸囧悜鐨勭被鍨嬫槸int銆傝〃杈懼紡&f鐨勭粨鏋滄槸涓涓寚閽堬紝鎸囬拡鐨勭被鍨嬫槸float*,瀹冩寚鍚戠殑綾誨瀷鏄痜loat銆備袱
鑰呬笉涓鑷達紝鐩存帴璧嬪肩殑鏂規(guī)硶鏄笉琛岀殑銆傝嚦灝戝湪鎴戠殑MSVC++6.0涓婏紝瀵規(guī)寚閽堢殑璧嬪艱鍙ヨ姹傝祴鍊煎彿涓よ竟鐨勭被鍨嬩竴鑷達紝鎵鎸囧悜鐨勭被鍨嬩篃涓鑷達紝鍏跺畠鐨勭紪璇戝櫒涓婃垜
娌¤瘯榪囷紝澶у鍙互璇曡瘯銆備負浜嗗疄鐜版垜浠殑鐩殑錛岄渶瑕佽繘琛?寮哄埗綾誨瀷杞崲"錛毬?br />p=(int*)&f;聽
濡傛灉鏈変竴涓寚閽?/font>
p錛屾垜浠渶瑕佹妸瀹冪殑綾誨瀷鍜屾墍鎸囧悜鐨勭被鍨嬫敼涓篢YEP* 鍜孴YPE錛屄?br />閭d箞璇硶鏍煎紡鏄細聽
(TYPE*)p錛?/font>
聽
榪欐牱寮哄埗綾誨瀷杞崲鐨勭粨鏋滄槸涓涓柊鎸囬拡錛岃鏂版寚閽堢殑綾誨瀷鏄?span lang="EN-US">TYPE*錛屽畠鎸囧悜鐨勭被鍨嬫槸TYPE錛屽畠鎸囧悜鐨勫湴鍧灝辨槸鍘熸寚閽堟寚鍚戠殑鍦板潃銆傝屽師鏉ョ殑鎸囬拡p鐨勪竴鍒囧睘鎬ч兘娌℃湁琚慨鏀廣?/span>
聽
涓涓嚱鏁板鏋滀嬌鐢ㄤ簡鎸囬拡浣滀負褰㈠弬錛岄偅涔堝湪鍑芥暟璋冪敤璇彞鐨勫疄鍙傚拰褰㈠弬鐨勭粨鍚堣繃紼嬩腑錛屼篃浼氬彂鐢熸寚閽堢被鍨嬬殑杞崲銆偮?br />渚嬪崄浜旓細聽
voidfun(char*);聽
inta=125,b;聽
fun((char*)&a);聽
...聽
...聽
voidfun(char*s)聽
{聽
charc;聽
c=*(s+3);*(s+3)=*(s+0);*(s+0)=c;聽
c=*(s+2);*(s+2)=*(s+1);*(s+1)=c;聽
}聽
}聽
娉?
鎰忚繖鏄竴涓?2浣嶇▼搴忥紝鏁卛nt綾誨瀷鍗犱簡鍥涗釜瀛楄妭錛宑har綾誨瀷鍗犱竴涓瓧鑺傘傚嚱鏁癴un鐨勪綔鐢ㄦ槸鎶婁竴涓暣鏁扮殑鍥涗釜瀛楄妭鐨勯『搴忔潵涓鍊掋傛敞鎰忓埌浜嗗悧錛熷湪鍑芥暟
璋冪敤璇彞涓紝瀹炲弬&a鐨勭粨鏋滄槸涓涓寚閽堬紝瀹冪殑綾誨瀷鏄痠nt*錛屽畠鎸囧悜鐨勭被鍨嬫槸int銆傚艦鍙傝繖涓寚閽堢殑綾誨瀷鏄痗har*錛屽畠鎸囧悜鐨勭被鍨嬫槸char銆?
榪欐牱錛屽湪瀹炲弬鍜屽艦鍙傜殑緇撳悎榪囩▼涓紝鎴戜滑蹇呴』榪涜涓嬈′粠int*綾誨瀷鍒癱har*綾誨瀷鐨勮漿鎹€傜粨鍚堣繖涓緥瀛愶紝鎴戜滑鍙互榪欐牱鏉ユ兂璞$紪璇戝櫒榪涜杞崲鐨勮繃紼嬶細緙栬瘧
鍣ㄥ厛鏋勯犱竴涓復鏃舵寚閽坈har*temp錛屄犵劧鍚庢墽琛宼emp=(char*)&a錛屾渶鍚庡啀鎶妕emp鐨勫間紶閫掔粰s銆傛墍浠ユ渶鍚庣殑緇撴灉鏄細s鐨勭被鍨?
鏄痗har*,瀹冩寚鍚戠殑綾誨瀷鏄痗har錛屽畠鎸囧悜鐨勫湴鍧灝辨槸a鐨勯鍦板潃銆偮?br />鎴戜滑宸茬粡鐭ラ亾錛?/span>
鎸囬拡鐨勫煎氨鏄寚閽堟寚鍚戠殑鍦板潃錛屽湪32浣嶇▼搴忎腑錛屾寚閽堢殑鍊煎叾瀹炴槸涓涓?2浣嶆暣鏁般?/span>
閭e彲涓嶅彲浠ユ妸涓涓暣鏁板綋浣滄寚閽堢殑鍊肩洿鎺ヨ祴緇欐寚閽堝憿錛熷氨璞′笅闈㈢殑璇彞錛?/font>
聽
unsignedinta;聽
TYPE*ptr;//TYPE鏄痠nt錛宑har鎴栫粨鏋勭被鍨嬬瓑絳夌被鍨嬨偮?br />...聽
...聽
a=20345686;聽
ptr=20345686;//鎴戜滑鐨勭洰鐨勬槸瑕佷嬌鎸囬拡ptr鎸囧悜鍦板潃20345686錛堝崄榪涘埗聽
錛壜?br />ptr=a;//鎴戜滑鐨勭洰鐨勬槸瑕佷嬌鎸囬拡ptr鎸囧悜鍦板潃20345686錛堝崄榪涘埗錛壜?br />緙栬瘧涓涓嬪惂銆傜粨鏋滃彂鐜板悗闈袱鏉¤鍙ュ叏鏄敊鐨勩傞偅涔堟垜浠殑鐩殑灝變笉鑳借揪鍒頒簡鍚楋紵涓嶏紝榪樻湁鍔炴硶錛毬?br />unsignedinta;聽
TYPE*ptr;//TYPE鏄痠nt錛宑har鎴栫粨鏋勭被鍨嬬瓑絳夌被鍨嬨偮?br />...聽
...聽
a=鏌愪釜鏁幫紝榪欎釜鏁板繀欏諱唬琛ㄤ竴涓悎娉曠殑鍦板潃錛浡?br />ptr=(TYPE*)a錛?/鍛靛懙錛岃繖灝卞彲浠ヤ簡銆偮?br />涓ユ牸璇存潵榪欓噷鐨?TYPE*)鍜屾寚閽堢被鍨嬭漿鎹腑鐨?TYPE*)榪樹笉涓鏍楓傝繖閲岀殑(TYP聽
E*)鐨勬剰鎬濇槸鎶婃棤絎﹀彿鏁存暟a鐨勫煎綋浣滀竴涓湴鍧鏉ョ湅寰呫備笂闈㈠己璋冧簡a鐨勫煎繀欏諱唬琛ㄤ竴涓悎娉曠殑鍦板潃錛屽惁鍒欑殑璇濓紝鍦ㄤ綘浣跨敤ptr鐨勬椂鍊欙紝灝變細鍑虹幇闈炴硶鎿嶄綔閿欒銆偮?br />鎯蟲兂鑳戒笉鑳藉弽榪囨潵錛屾妸鎸囬拡鎸囧悜鐨勫湴鍧鍗蟲寚閽堢殑鍊煎綋浣滀竴涓暣鏁板彇鍑烘潵銆傚畬鍏ㄥ彲浠ャ備笅闈㈢殑渚嬪瓙婕旂ず浜嗘妸涓涓寚閽堢殑鍊煎綋浣滀竴涓暣鏁板彇鍑烘潵錛岀劧鍚庡啀鎶婅繖涓暣鏁板綋浣滀竴涓湴鍧璧嬬粰涓涓寚閽堬細聽
渚嬪崄鍏細聽
inta=123,b;聽
int*ptr=&a;聽
char*str;聽
b=(int)ptr;//鎶婃寚閽坧tr鐨勫煎綋浣滀竴涓暣鏁板彇鍑烘潵銆偮?br />str=(char*)b;//鎶婅繖涓暣鏁扮殑鍊煎綋浣滀竴涓湴鍧璧嬬粰鎸囬拡str銆偮?br />濂戒簡錛岀幇鍦ㄦ垜浠凡緇忕煡閬撲簡錛屽彲浠ユ妸鎸囬拡鐨勫煎綋浣滀竴涓暣鏁板彇鍑烘潵錛屼篃鍙互鎶婁竴涓暣鏁板煎綋浣滃湴鍧璧嬬粰涓涓寚閽堛?/font>

]]> - 絎叚绔犮傛寚閽堝拰緇撴瀯綾誨瀷鐨勫叧緋?/title>http://m.shnenglu.com/zzh/articles/19610.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:45:00 GMThttp://m.shnenglu.com/zzh/articles/19610.htmlhttp://m.shnenglu.com/zzh/comments/19610.htmlhttp://m.shnenglu.com/zzh/articles/19610.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19610.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19610.html
鍙互澹版槑涓涓寚鍚戠粨鏋勭被鍨嬪璞$殑鎸囬拡銆?/font>
聽
渚嬪崄涓錛毬?br />struct MyStruct聽
{聽
inta;聽
intb;聽
intc;聽
}聽
MyStruct ss={20,30,40};//澹版槑浜嗙粨鏋勫璞s錛屽茍鎶妔s鐨勪笁涓垚鍛樺垵濮嬄?br />鍖栦負20錛?0鍜?0銆偮?br />MyStruct *ptr=&ss;//澹版槑浜嗕竴涓寚鍚戠粨鏋勫璞s鐨勬寚閽堛傚畠鐨勭被鍨嬫槸聽
MyStruct*,瀹冩寚鍚戠殑綾誨瀷鏄疢yStruct銆偮?br />
int*pstr=(int*)&ss;//澹版槑浜嗕竴涓寚鍚戠粨鏋勫璞s鐨勬寚閽堛備絾鏄畠鐨劼?br />綾誨瀷鍜屽畠鎸囧悜鐨勭被鍨嬪拰ptr鏄笉鍚岀殑銆?/font>
聽
璇烽棶鎬庢牱閫氳繃鎸囬拡ptr鏉ヨ闂畇s鐨勪笁涓垚鍛樺彉閲忥紵聽
絳旀錛毬?br />ptr->a;聽
ptr->b;聽
ptr->c;聽
鍙堣闂庢牱閫氳繃鎸囬拡pstr鏉ヨ闂畇s鐨勪笁涓垚鍛樺彉閲忥紵聽
絳旀錛毬?br />*pstr錛?/璁塊棶浜唖s鐨勬垚鍛榓銆偮?br />*(pstr+1);//璁塊棶浜唖s鐨勬垚鍛榖銆偮?br />*(pstr+2)//璁塊棶浜唖s鐨勬垚鍛榗銆偮?br />鍛靛懙錛岃櫧鐒舵垜鍦ㄦ垜鐨凪SVC++6.0涓婅皟寮忚繃涓婅堪浠g爜錛屼絾鏄鐭ラ亾錛岃繖鏍蜂嬌鐢╬str鏉ヨ闂粨鏋勬垚鍛樻槸涓嶆瑙勭殑錛屼負浜嗚鏄庝負浠涔堜笉姝h錛岃鎴戜滑鐪嬬湅鎬庢牱閫氳繃鎸囬拡鏉ヨ闂暟緇勭殑鍚勪釜鍗曞厓錛毬?br />渚嬪崄浜岋細聽
int array[3]={35,56,37};聽
int*pa=array;聽
閫氳繃鎸囬拡pa璁塊棶鏁扮粍array鐨勪笁涓崟鍏冪殑鏂規(guī)硶鏄細聽
*pa;//璁塊棶浜嗙0鍙峰崟鍏兟?br />*(pa+1);//璁塊棶浜嗙1鍙峰崟鍏兟?br />*(pa+2);//璁塊棶浜嗙2鍙峰崟鍏兟?br />浠庢牸寮忎笂鐪嬪掓槸涓庨氳繃鎸囬拡璁塊棶緇撴瀯鎴愬憳鐨勪笉姝h鏂規(guī)硶鐨勬牸寮忎竴鏍楓偮?br />
鎵鏈夌殑C/C++緙栬瘧鍣?/span>
鍦ㄦ帓鍒楁暟緇勭殑鍗曞厓鏃訛紝鎬繪槸鎶婂悇涓暟緇勫崟鍏冨瓨鏀懼湪榪炵畫鐨勫瓨鍌ㄥ尯閲岋紝鍗曞厓鍜屽崟鍏冧箣闂存病鏈夌┖闅欍?/span>
浣嗗湪瀛樻斁緇撴瀯瀵硅薄鐨勫悇涓垚鍛樻椂錛屽湪鏌愮緙栬瘧鐜涓嬶紝鍙兘浼氶渶瑕佸瓧瀵歸綈鎴栧弻瀛楀榻愭垨鑰呮槸鍒殑浠涔堝榻愶紝闇瑕佸湪鐩擱偦涓や釜鎴愬憳涔嬮棿鍔犺嫢騫蹭釜"濉厖瀛楄妭"錛岃繖灝卞鑷村悇涓垚鍛樹箣闂村彲鑳戒細鏈夎嫢騫蹭釜瀛楄妭鐨勭┖闅欍?/span>
聽
鎵
浠ワ紝鍦ㄤ緥鍗佷簩涓紝鍗充嬌*pstr璁塊棶鍒頒簡緇撴瀯瀵硅薄ss鐨勭涓涓垚鍛樺彉閲廰錛屼篃涓嶈兘淇濊瘉*(pstr+1)灝變竴瀹氳兘璁塊棶鍒扮粨鏋勬垚鍛榖銆傚洜涓烘垚鍛榓鍜屾垚鍛榖涔?
闂村彲鑳戒細鏈夎嫢騫插~鍏呭瓧鑺傦紝璇翠笉瀹?(pstr+1)灝辨濂借闂埌浜嗚繖浜涘~鍏呭瓧鑺傚憿銆傝繖涔熻瘉鏄庝簡鎸囬拡鐨勭伒媧繪с傝鏄綘鐨勭洰鐨勫氨鏄兂鐪嬬湅鍚勪釜緇撴瀯鎴愬憳涔嬮棿鍒板簳
鏈夋病鏈夊~鍏呭瓧鑺傦紝鍢匡紝榪欏掓槸涓笉閿欑殑鏂規(guī)硶銆偮?br />閫氳繃鎸囬拡璁塊棶緇撴瀯鎴愬憳鐨勬紜柟娉曞簲璇ユ槸璞′緥鍗佷簩涓嬌鐢ㄦ寚閽坧tr鐨勬柟娉曘?/font>

]]> - 絎簲绔犮傛暟緇勫拰鎸囬拡鐨勫叧緋?/title>http://m.shnenglu.com/zzh/articles/19609.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:44:00 GMThttp://m.shnenglu.com/zzh/articles/19609.htmlhttp://m.shnenglu.com/zzh/comments/19609.htmlhttp://m.shnenglu.com/zzh/articles/19609.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19609.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19609.html
濡傛灉瀵瑰0鏄庢暟緇勭殑璇彞涓嶅お鏄庣櫧鐨勮瘽錛岃鍙傞槄鎴戝墠孌墊椂闂磋創(chuàng)鍑虹殑鏂囩珷
<<濡備綍鐞嗚Вc鍜宑++鐨勫鏉傜被鍨嬪0鏄?gt;>銆偮?br />鏁扮粍鐨勬暟緇勫悕鍏跺疄鍙互鐪嬩綔涓涓寚閽堛傜湅涓嬩緥錛毬?br />渚嬪叓錛毬?br />
int array[10]={0,1,2,3,4,5,6,7,8,9}
,value;聽
...聽
...聽
value=array[0];//涔熷彲鍐欐垚錛歷alue=*array;聽
value=array[3];//涔熷彲鍐欐垚錛歷alue=*(array+3);聽
value=array[4];//涔熷彲鍐欐垚錛歷alue=*(array+4);聽
涓婁緥涓紝涓鑸岃█鏁扮粍鍚峚rray浠h〃鏁扮粍鏈韓錛岀被鍨嬫槸int[10]錛屼絾
濡傛灉鎶?span lang="EN-US">array鐪嬪仛鎸囬拡鐨勮瘽錛屽畠鎸囧悜鏁扮粍鐨勭0涓崟鍏冿紝綾誨瀷鏄痠nt*錛屾墍鎸囧悜鐨勭被鍨嬫槸鏁扮粍鍗曞厓鐨勭被鍨嬪嵆int銆?/span>
鍥犳
*array絳変簬0灝變竴鐐逛篃涓嶅鎬簡銆傚悓鐞嗭紝array+3鏄竴涓寚鍚戞暟緇勭3涓崟鍏冪殑鎸囬拡錛屾墍浠?(array+3)絳変簬3銆傚叾瀹冧緷姝ょ被鎺ㄣ偮?br />渚嬩節(jié)錛毬?br />渚嬩節(jié)錛毬?br />
char*str[3]={聽
"Hello,thisisasample!",聽
"Hi,goodmorning.",聽
"Helloworld"聽
};聽
chars[80]錛浡?br />strcpy(s,str[0]);//涔熷彲鍐欐垚strcpy(s,*str);聽
strcpy(s,str[1]);//涔熷彲鍐欐垚strcpy(s,*(str+1));聽
strcpy(s,str[2]);//涔熷彲鍐欐垚strcpy(s,*(str+2));聽
涓婁緥涓紝
str鏄竴涓笁鍗曞厓鐨勬暟緇勶紝璇ユ暟緇勭殑姣忎釜鍗曞厓閮芥槸涓涓寚閽堬紝榪欎簺鎸嚶?br />閽堝悇鎸囧悜涓涓瓧絎︿覆銆傛妸鎸囬拡鏁扮粍鍚峴tr褰撲綔涓涓寚閽堢殑璇濓紝瀹冩寚鍚戞暟緇勭殑絎?鍙峰崟鍏冿紝瀹冪殑綾誨瀷鏄痗har**錛屽畠鎸囧悜鐨勭被鍨嬫槸char*銆?/font>
聽
*str涔熸槸涓涓寚閽堬紝瀹冪殑綾誨瀷鏄痗har*錛屽畠鎵鎸囧悜鐨勭被鍨嬫槸char錛屽畠鎸囧悜鐨勫湴鍧鏄瓧絎︿覆"Hello,thisisasample!"鐨勭涓涓瓧絎︾殑鍦板潃錛屽嵆'H'鐨勫湴鍧銆?/span>
聽
str+1涔熸槸涓涓寚閽堬紝瀹冩寚鍚戞暟緇勭殑絎?鍙峰崟鍏冿紝瀹冪殑綾誨瀷鏄痗har**錛屽畠鎸囧悜鐨勭被鍨嬫槸char*銆偮?/span>
*(str+1)涔熸槸涓涓寚閽堬紝瀹冪殑綾誨瀷鏄痗har*錛屽畠鎵鎸囧悜鐨勭被鍨嬫槸char錛屽畠鎸囧悜聽"Hi,goodmorning."鐨勭涓涓瓧絎?H'錛岀瓑絳夈偮?/font>
涓嬮潰鎬葷粨涓涓嬫暟緇勭殑鏁扮粍鍚嶇殑闂銆?/font>
澹版槑浜嗕竴涓暟緇?span lang="EN-US">TYPE
array[n]錛屽垯鏁扮粍鍚嶇Оarray灝辨湁浜嗕袱閲嶅惈涔夛細絎竴錛屽畠浠h〃鏁翠釜鏁扮粍錛屽畠鐨勭被鍨嬫槸TYPE[n]錛涚浜屄狅紝瀹冩槸涓涓寚閽堬紝璇ユ寚閽堢殑綾誨瀷鏄?
TYPE*錛岃鎸囬拡鎸囧悜鐨勭被鍨嬫槸TYPE錛屼篃灝辨槸鏁扮粍鍗曞厓鐨勭被鍨嬶紝璇ユ寚閽堟寚鍚戠殑鍐呭瓨鍖哄氨鏄暟緇勭0鍙峰崟鍏冿紝璇ユ寚閽堣嚜宸卞崰鏈夊崟鐙殑鍐呭瓨鍖猴紝娉ㄦ剰瀹冨拰鏁扮粍絎?
鍙峰崟鍏冨崰鎹殑鍐呭瓨鍖烘槸涓嶅悓鐨勩傝鎸囬拡鐨勫兼槸涓嶈兘淇敼鐨勶紝鍗崇被浼糰rray++鐨勮〃杈懼紡鏄敊璇殑銆?/span>
聽
鍦ㄤ笉鍚岀殑琛ㄨ揪寮忎腑鏁扮粍鍚峚rray鍙互鎵紨涓嶅悓鐨勮鑹層偮?br />
鍦ㄨ〃杈懼紡sizeof(array)涓紝鏁扮粍鍚峚rray浠h〃鏁扮粍鏈韓錛屾晠榪欐椂sizeof鍑芥暟嫻嬪嚭鐨勬槸鏁翠釜鏁扮粍鐨勫ぇ灝忋?/span>
聽
鍦ㄨ〃杈懼紡*array涓紝array鎵紨鐨勬槸鎸囬拡錛屽洜姝よ繖涓〃杈懼紡鐨勭粨鏋滃氨鏄暟緇勭0鍙峰崟鍏冪殑鍊箋俿izeof(*array)嫻嬪嚭鐨勬槸鏁扮粍鍗曞厓鐨勫ぇ灝忋?/span>
聽
琛ㄨ揪寮?/font>
array+n錛堝叾涓璶=0錛?錛?錛?...銆傦級涓紝array鎵紨鐨勬槸鎸囬拡錛屾晠array+n鐨勭粨鏋滄槸涓涓寚閽堬紝瀹冪殑綾誨瀷鏄疶YPE*錛屽畠鎸囧悜鐨勭被鍨嬫槸TYPE錛屽畠鎸囧悜鏁扮粍絎琻鍙峰崟鍏冦傛晠sizeof(array+n)嫻嬪嚭鐨勬槸鎸囬拡綾誨瀷鐨勫ぇ灝忋偮?br />
渚嬪崄錛?/font>
聽
int array[10];聽
int(*ptr)[10];聽
ptr=&array;聽
涓婁緥涓璸tr鏄竴涓寚閽堬紝瀹冪殑綾誨瀷鏄痠nt(*)[10]錛屼粬鎸囧悜鐨勭被鍨嬫槸int[10]聽錛屾垜浠敤鏁翠釜鏁扮粍鐨勯鍦板潃鏉ュ垵濮嬪寲瀹冦傚湪璇彞ptr=&array涓紝array浠h〃鏁扮粍鏈韓銆偮?br />鏈妭涓彁鍒頒簡鍑芥暟sizeof()錛岄偅涔堟垜鏉ラ棶涓闂紝
sizeof(鎸囬拡鍚嶇О)嫻嬪嚭鐨?/span>
絀剁珶
鏄寚閽堣嚜韜被鍨嬬殑澶у皬
鍛㈣繕鏄寚閽堟墍鎸囧悜鐨勭被鍨嬬殑澶у皬錛熺瓟妗堟槸鍓嶈呫?/span>
渚嬪錛?/font>
聽
int(*ptr)[10];聽
鍒欏湪32浣嶇▼搴忎腑錛屾湁錛毬?br />sizeof(int(*)[10])==4聽
sizeof(int[10])==40聽
sizeof(ptr)==4聽
瀹為檯涓婏紝
sizeof(瀵硅薄)嫻嬪嚭鐨勯兘鏄璞¤嚜韜殑綾誨瀷鐨勫ぇ灝?/span>
錛岃屼笉鏄埆鐨勪粈涔?/font>
聽
綾誨瀷鐨勫ぇ灝忋?/font>

]]> - 絎洓绔犮傛寚閽堣〃杈懼紡銆?/title>http://m.shnenglu.com/zzh/articles/19608.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:43:00 GMThttp://m.shnenglu.com/zzh/articles/19608.htmlhttp://m.shnenglu.com/zzh/comments/19608.htmlhttp://m.shnenglu.com/zzh/articles/19608.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19608.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19608.html
涓涓〃杈懼紡鐨勬渶鍚庣粨鏋滃鏋滄槸涓涓寚閽堬紝閭d箞榪欎釜琛ㄨ揪寮忓氨鍙寚閽堣〃寮忋?/font>
聽
涓嬮潰鏄竴浜涙寚閽堣〃杈懼紡鐨勪緥瀛愶細聽
渚嬪叚錛毬?br />inta,b;聽
intarray[10];聽
int*pa;聽
pa=&a;//&a鏄竴涓寚閽堣〃杈懼紡銆偮?br />int**ptr=&pa;//&pa涔熸槸涓涓寚閽堣〃杈懼紡銆偮?br />*ptr=&b;//*ptr鍜?amp;b閮芥槸鎸囬拡琛ㄨ揪寮忋偮?br />pa=array;聽
pa++;//榪欎篃鏄寚閽堣〃杈懼紡銆偮?br />渚嬩竷錛毬?br />char*arr[20];聽
char**parr=arr;//濡傛灉鎶奱rr鐪嬩綔鎸囬拡鐨勮瘽錛宎rr涔熸槸鎸囬拡琛ㄨ揪寮徛?br />char*str;聽
str=*parr;//*parr鏄寚閽堣〃杈懼紡聽
str=*(parr+1);//*(parr+1)鏄寚閽堣〃杈懼紡聽
str=*(parr+2);//*(parr+2)鏄寚閽堣〃杈懼紡聽
鐢變簬鎸囬拡琛ㄨ揪寮忕殑緇撴灉鏄竴涓寚閽堬紝鎵浠ユ寚閽堣〃杈懼紡涔熷叿鏈夋寚閽堟墍鍏鋒湁鐨勫洓涓绱狅細鎸囬拡鐨勭被鍨嬶紝鎸囬拡鎵鎸囧悜鐨勭被鍨嬶紝鎸囬拡鎸囧悜鐨勫唴瀛樺尯錛屾寚閽堣嚜韜崰鎹殑鍐呭瓨銆?/font>
聽
濂戒簡錛?/font>
褰撲竴涓寚閽堣〃杈懼紡鐨勭粨鏋滄寚閽堝凡緇忔槑紜湴鍏鋒湁浜嗘寚閽堣嚜韜崰鎹殑鍐呭瓨鐨勮瘽錛岃繖涓寚閽堣〃杈懼紡灝辨槸涓涓乏鍊鹼紝鍚﹀垯灝變笉鏄竴涓乏鍊箋?span lang="EN-US">聽
鍦ㄤ緥涓冧腑錛?amp;a涓嶆槸涓涓乏鍊鹼紝鍥犱負瀹冭繕娌℃湁鍗犳嵁鏄庣‘鐨勫唴瀛樸?ptr鏄竴涓乏鍊鹼紝鍥犱負*ptr榪欎釜鎸囬拡宸茬粡鍗犳嵁浜嗗唴瀛橈紝鍏跺疄*ptr灝辨槸鎸囬拡pa錛屾棦鐒秔a宸茬粡鍦ㄥ唴瀛樹腑鏈変簡鑷繁鐨勪綅緗紝閭d箞*ptr褰撶劧涔熸湁浜嗚嚜宸辯殑浣嶇疆銆?/font>

]]>- 絎笁绔狅紟榪愮畻絎?amp;鍜?http://m.shnenglu.com/zzh/articles/19607.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:42:00 GMThttp://m.shnenglu.com/zzh/articles/19607.htmlhttp://m.shnenglu.com/zzh/comments/19607.htmlhttp://m.shnenglu.com/zzh/articles/19607.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19607.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19607.html
榪欓噷
&鏄彇鍦板潃榪愮畻絎︼紝*鏄?..涔︿笂鍙仛"闂存帴榪愮畻絎?銆偮?br />
&a鐨勮繍綆楃粨鏋滄槸涓涓寚閽堬紝鎸囬拡鐨勭被鍨嬫槸a鐨勭被鍨嬪姞涓?錛屾寚閽堟墍鎸囧悜鐨勭被鍨嬫槸a鐨勭被鍨嬶紝鎸囬拡鎵鎸囧悜鐨勫湴鍧鍢涳紝閭e氨鏄痑鐨勫湴鍧銆偮?/font>
*p鐨勮繍綆楃粨鏋滃氨浜旇姳鍏棬浜嗐?/font>
鎬諱箣*p鐨勭粨鏋滄槸p鎵鎸囧悜鐨勪笢瑗?/span>
錛岃繖涓笢瑗挎湁榪欎簺鐗圭偣錛?/span>
瀹冪殑綾誨瀷鏄?span lang="EN-US">p鎸囧悜鐨勭被鍨嬶紝瀹冩墍鍗犵敤鐨勫湴鍧鏄痯鎵鎸囧悜鐨勫湴鍧銆?/span>
聽
渚嬩簲錛毬?br />
inta=12;
聽
intb;聽
int*p;聽
int**ptr;聽
p=&a;//
&a鐨勭粨鏋滄槸涓涓寚閽堬紝綾誨瀷鏄痠nt*錛屾寚鍚戠殑綾誨瀷鏄痠nt錛屾寚鍚戠殑鍦板潃鏄痑鐨勫湴鍧銆?/span>
聽
*p=24;//*p鐨勭粨鏋滐紝鍦ㄨ繖閲屽畠鐨勭被鍨嬫槸int錛屽畠鎵鍗犵敤鐨勫湴鍧鏄痯鎵鎸囧悜鐨勫湴鍧錛屾樉鐒訛紝*p灝辨槸鍙橀噺a銆偮?br />ptr=&p;//&p鐨勭粨鏋滄槸涓寚閽堬紝璇ユ寚閽堢殑綾誨瀷鏄痯鐨勭被鍨嬪姞涓?錛屽湪榪欓噷鏄痠nt聽**銆傝鎸囬拡鎵鎸囧悜鐨勭被鍨嬫槸p鐨勭被鍨嬶紝榪欓噷鏄痠nt*銆傝鎸囬拡鎵鎸囧悜鐨勫湴鍧灝辨槸鎸囬拡p鑷繁鐨勫湴鍧銆偮?br />*ptr=&b;//*ptr鏄釜鎸囬拡錛?amp;b鐨勭粨鏋滀篃鏄釜鎸囬拡錛屼笖榪欎袱涓寚閽堢殑綾誨瀷鍜屾墍鎸囧悜鐨勭被鍨嬫槸涓鏍風殑錛屾墍浠ョ敤&b鏉ョ粰*ptr璧嬪煎氨鏄鏃犻棶棰樼殑浜嗐偮?br />**ptr=34;//*ptr鐨勭粨鏋滄槸ptr鎵鎸囧悜鐨勪笢瑗匡紝鍦ㄨ繖閲屾槸涓涓寚閽堬紝瀵硅繖涓寚閽堝啀鍋氫竴嬈?榪愮畻錛岀粨鏋滃氨鏄竴涓猧nt綾誨瀷鐨勫彉閲?/font>

]]> - 絎簩绔狅紟鎸囬拡鐨勭畻鏈繍綆?/title>http://m.shnenglu.com/zzh/articles/19603.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 02:11:00 GMThttp://m.shnenglu.com/zzh/articles/19603.htmlhttp://m.shnenglu.com/zzh/comments/19603.htmlhttp://m.shnenglu.com/zzh/articles/19603.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19603.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19603.html
鎸囬拡鍙互鍔犱笂鎴栧噺鍘諱竴涓暣鏁般傛寚閽堢殑榪欑榪愮畻鐨勬剰涔夊拰閫氬父鐨勬暟鍊肩殑鍔犲噺榪愮畻鐨勬剰涔夋槸涓嶄竴鏍風殑銆備緥濡傦細
聽
渚嬩簩錛毬?br />1銆俢hara[20];聽
2銆俰nt*ptr=a;聽
...聽
...聽
3銆俻tr++;聽
鍦?
涓婁緥涓紝鎸囬拡ptr鐨勭被鍨嬫槸int*,瀹冩寚鍚戠殑綾誨瀷鏄痠nt錛屽畠琚垵濮嬪寲涓烘寚鍚戞暣褰㈠彉閲廰銆傛帴涓嬫潵鐨勭3鍙ヤ腑錛屾寚閽坧tr琚姞浜?錛岀紪璇戝櫒鏄繖鏍峰鐞嗙殑錛?
瀹冩妸鎸囬拡ptr鐨勫煎姞涓婁簡sizeof(int)錛屽湪32浣嶇▼搴忎腑錛屾槸琚姞涓婁簡4銆傜敱浜庡湴鍧鏄敤瀛楄妭鍋氬崟浣嶇殑錛屾晠ptr鎵鎸囧悜鐨勫湴鍧鐢卞師鏉ョ殑鍙橀噺a鐨勫湴鍧
鍚戦珮鍦板潃鏂瑰悜澧炲姞浜?涓瓧鑺傘偮?br />鐢變簬char綾誨瀷鐨勯暱搴︽槸涓涓瓧鑺傦紝鎵浠ワ紝鍘熸潵ptr鏄寚鍚戞暟緇刟鐨勭0鍙峰崟鍏冨紑濮嬬殑鍥涗釜瀛楄妭錛屾鏃舵寚鍚戜簡鏁扮粍a涓粠絎?鍙峰崟鍏冨紑濮嬬殑鍥涗釜瀛楄妭銆偮?br />鎴戜滑鍙互鐢ㄤ竴涓寚閽堝拰涓涓驚鐜潵閬嶅巻涓涓暟緇勶紝鐪嬩緥瀛愶細
渚嬩笁錛毬?br />intarray[20];聽
int*ptr=array;聽
...聽
//姝ゅ鐣ュ幓涓烘暣鍨嬫暟緇勮祴鍊肩殑浠g爜銆偮?br />...聽
for(i=0;i<20;i++)聽
{聽
(*ptr)++;聽
ptr++錛浡?br />}聽
榪欎釜渚嬪瓙灝嗘暣鍨嬫暟緇勪腑鍚勪釜鍗曞厓鐨勫煎姞1銆傜敱浜庢瘡嬈″驚鐜兘灝嗘寚閽坧tr鍔?錛屾墍浠ユ瘡嬈″驚鐜兘鑳借闂暟緇勭殑涓嬩竴涓崟鍏冦偮?br />鍐嶇湅渚嬪瓙錛毬?br />渚嬪洓錛毬?br />1銆俢hara[20];聽
2銆俰nt*ptr=a;聽
...聽
...聽
3銆俻tr+=5;聽
鍦?
榪欎釜渚嬪瓙涓紝ptr琚姞涓婁簡5錛岀紪璇戝櫒鏄繖鏍峰鐞嗙殑錛氬皢鎸囬拡ptr鐨勫煎姞涓?涔榮izeof(int)錛屽湪32浣嶇▼搴忎腑灝辨槸鍔犱笂浜?涔?=20銆傜敱浜庡湴鍧
鐨勫崟浣嶆槸瀛楄妭錛屾晠鐜板湪鐨刾tr鎵鎸囧悜鐨勫湴鍧姣旇搗鍔?鍚庣殑ptr鎵鎸囧悜鐨勫湴鍧鏉ヨ錛屽悜楂樺湴鍧鏂瑰悜縐誨姩浜?0涓瓧鑺傘傚湪榪欎釜渚嬪瓙涓紝娌″姞5鍓嶇殑ptr鎸囧悜鏁扮粍
a鐨勭0鍙峰崟鍏冨紑濮嬬殑鍥涗釜瀛楄妭錛屽姞5鍚庯紝ptr宸茬粡鎸囧悜浜嗘暟緇刟鐨勫悎娉曡寖鍥翠箣澶栦簡銆傝櫧鐒惰繖縐嶆儏鍐靛湪搴旂敤涓婁細鍑洪棶棰橈紝浣嗗湪璇硶涓婂嵈鏄彲浠ョ殑銆傝繖涔熶綋鐜板嚭浜嗘寚
閽堢殑鐏墊椿鎬с偮?br />濡傛灉涓婁緥涓紝ptr鏄鍑忓幓5錛岄偅涔堝鐞嗚繃紼嬪ぇ鍚屽皬寮傦紝鍙笉榪噋tr鐨勫兼槸琚噺鍘?涔榮izeof(int)錛屾柊鐨刾tr鎸囧悜鐨勫湴鍧灝嗘瘮鍘熸潵鐨刾tr鎵鎸囧悜鐨勫湴鍧鍚戜綆鍦板潃鏂瑰悜縐誨姩浜?0涓瓧鑺傘偮犅?br />鎬葷粨涓涓嬶紝涓涓寚閽坧trold鍔犱笂涓涓暣鏁皀鍚庯紝緇撴灉鏄竴涓柊鐨勬寚閽坧trnew錛屄?br />ptrnew
鐨勭被鍨嬪拰ptrold鐨勭被鍨嬬浉鍚岋紝ptrnew鎵鎸囧悜鐨勭被鍨嬪拰ptrold鎵鎸囧悜鐨勭被鍨嬩篃鐩稿悓銆俻trnew鐨勫煎皢姣攑trold鐨勫煎鍔犱簡n涔?
sizeof(ptrold鎵鎸囧悜鐨勭被鍨?涓瓧鑺傘傚氨鏄錛宲trnew鎵鎸囧悜鐨勫唴瀛樺尯灝嗘瘮ptrold鎵鎸囧悜鐨勫唴瀛樺尯鍚戦珮鍦板潃鏂瑰悜縐誨姩浜唍涔?
sizeof(ptrold鎵鎸囧悜鐨勭被鍨?涓瓧鑺傘偮?br />涓涓寚閽坧trold鍑忓幓涓涓暣鏁皀鍚庯紝緇撴灉鏄竴涓柊鐨勬寚閽坧trnew錛宲trnew鐨勭被
鍨嬪拰ptrold鐨勭被鍨嬬浉鍚岋紝ptrnew鎵鎸囧悜鐨勭被鍨嬪拰ptrold鎵鎸囧悜鐨勭被鍨嬩篃鐩稿悓銆俻trnew鐨勫煎皢姣攑trold鐨勫煎噺灝戜簡n涔榮izeof
(ptrold鎵鎸囧悜鐨勭被鍨?涓瓧鑺傦紝灝辨槸璇達紝ptrnew鎵鎸囧悜鐨勫唴瀛樺尯灝嗘瘮ptrold鎵鎸囧悜鐨勫唴瀛樺尯鍚戜綆鍦板潃鏂瑰悜縐誨姩浜唍涔榮izeof
(ptrold鎵鎸囧悜鐨勭被鍨?涓瓧鑺傘偮?/font>

]]> - 絎竴绔狅紟鎸囬拡鐨勬蹇?/title>http://m.shnenglu.com/zzh/articles/19601.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 01:52:00 GMThttp://m.shnenglu.com/zzh/articles/19601.htmlhttp://m.shnenglu.com/zzh/comments/19601.htmlhttp://m.shnenglu.com/zzh/articles/19601.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19601.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19601.html
絎竴绔狅紟鎸囬拡鐨勬蹇?/font>
聽
鎸囬拡鏄竴涓壒孌婄殑鍙橀噺錛屽畠閲岄潰瀛樺偍鐨勬暟鍊艱瑙i噴鎴愪負鍐呭瓨閲岀殑涓涓湴鍧銆?/span>
聽
瑕佹悶娓呬竴涓寚閽堥渶瑕佹悶娓呮寚閽堢殑鍥涙柟闈㈢殑鍐呭錛氭寚閽堢殑綾誨瀷錛屾寚閽堟墍鎸囧悜鐨?/span>
聽
綾誨瀷錛屾寚閽堢殑鍊兼垨鑰呭彨鎸囬拡鎵鎸囧悜鐨勫唴瀛樺尯錛岃繕鏈夋寚閽堟湰韜墍鍗犳嵁鐨勫唴瀛樺尯銆傝
聽
鎴戜滑鍒嗗埆璇存槑銆?/span>
聽
鍏堝0鏄庡嚑涓寚閽堟斁鐫鍋氫緥瀛愶細
聽
渚嬩竴錛?/span>
聽
(1)int*ptr;聽
(2)char*ptr;聽
(3)int**ptr;聽
(4)int(*ptr)[3];聽
(5)int*(*ptr)[4];聽
濡傛灉鐪嬩笉鎳傚悗鍑犱釜渚嬪瓙鐨勮瘽錛岃鍙傞槄鎴戝墠孌墊椂闂磋創(chuàng)鍑虹殑鏂囩珷
<<
濡備綍鐞嗚В
c
鍜?/span>
c聽++
鐨勫鏉傜被鍨嬪0鏄?/span>
>>
銆?/span>
聽
1
銆傛寚閽堢殑綾誨瀷銆?/span>
聽
浠庤娉曠殑瑙掑害鐪嬶紝浣?/span>
鍙鎶婃寚閽堝0鏄庤鍙ラ噷鐨勬寚閽堝悕瀛楀幓鎺夛紝鍓╀笅鐨勯儴鍒嗗氨鏄繖涓寚閽堢殑綾誨瀷銆?/span>
榪欐槸鎸囬拡鏈韓鎵鍏鋒湁鐨勭被鍨嬨傝鎴戜滑鐪嬬湅渚嬩竴涓悇涓寚閽堢殑綾誨瀷錛?/span>
聽
(1)int*ptr;//
鎸囬拡鐨勭被鍨嬫槸
int*聽
(2)char*ptr;//
鎸囬拡鐨勭被鍨嬫槸
char*聽
(3)int**ptr;//
鎸囬拡鐨勭被鍨嬫槸
int**聽
(4)int(*ptr)[3];//
鎸囬拡鐨勭被鍨嬫槸
int(*)[3]聽
(5)int*(*ptr)[4];//
鎸囬拡鐨勭被鍨嬫槸
int*(*)[4]聽
鎬庝箞鏍鳳紵鎵懼嚭鎸囬拡鐨勭被鍨嬬殑鏂規(guī)硶鏄笉鏄緢綆鍗曪紵
聽
2
銆傛寚閽堟墍鎸囧悜鐨勭被鍨嬨?/span>
聽
褰撲綘閫氳繃鎸囬拡鏉ヨ闂寚閽堟墍鎸囧悜鐨勫唴瀛樺尯鏃訛紝鎸囬拡鎵鎸囧悜鐨勭被鍨嬪喅瀹氫簡緙栬瘧鍣ㄥ皢鎶婇偅鐗囧唴瀛樺尯閲岀殑鍐呭褰撳仛浠涔堟潵鐪嬪緟銆?/span>
聽
浠庤娉曚笂鐪嬶紝浣犲彧欏?/span>
鎶婃寚閽堝0鏄庤鍙ヤ腑鐨勬寚閽堝悕瀛楀拰鍚嶅瓧宸﹁竟鐨勬寚閽堝0鏄庣
*
鍘繪帀錛屽墿涓嬬殑灝辨槸鎸囬拡鎵鎸囧悜鐨勭被鍨嬨?/span>
渚嬪錛?/span>
聽
(1)int*ptr;//
鎸囬拡鎵鎸囧悜鐨勭被鍨嬫槸
int聽
(2)char*ptr;//
鎸囬拡鎵鎸囧悜鐨勭殑綾誨瀷鏄?/span>
char聽
(3)int**ptr;//
鎸囬拡鎵鎸囧悜鐨勭殑綾誨瀷鏄?/span>
int*聽
(4)int(*ptr)[3];//
鎸囬拡鎵鎸囧悜鐨勭殑綾誨瀷鏄?/span>
int()[3]聽
(5)int*(*ptr)[4];//
鎸囬拡鎵鎸囧悜鐨勭殑綾誨瀷鏄?/span>
int*()[4]聽
鍦ㄦ寚閽堢殑綆楁湳榪愮畻涓紝鎸囬拡鎵鎸囧悜鐨勭被鍨嬫湁寰堝ぇ鐨勪綔鐢ㄣ?/span>
聽
鎸囬拡鐨勭被鍨?/span>
(
鍗蟲寚閽堟湰韜殑綾誨瀷
)
鍜屾寚閽堟墍鎸囧悜鐨勭被鍨嬫槸涓や釜姒傚康銆傚綋浣犲
C
瓚婃潵瓚婄啛鎮(zhèn)夋椂錛屼綘浼氬彂鐜幫紝鎶婁笌鎸囬拡鎼呭拰鍦ㄤ竴璧風殑
"
綾誨瀷
"
榪欎釜姒傚康鍒嗘垚
"
鎸囬拡鐨勭被鍨?/span>
"
鍜?/span>
"
鎸囬拡鎵鎸囧悜鐨勭被鍨?/span>
"
涓や釜姒傚康錛屾槸綺鵑氭寚閽堢殑鍏抽敭鐐逛箣涓銆傛垜鐪嬩簡涓嶅皯涔︼紝鍙戠幇鏈変簺鍐欏緱宸殑涔︿腑錛屽氨鎶婃寚閽堢殑榪欎袱涓蹇墊悈鍦ㄤ竴璧蜂簡錛屾墍浠ョ湅璧蜂功鏉ュ墠鍚庣煕鐩撅紝瓚婄湅瓚婄硦娑傘?/span>
聽
3
銆傛寚閽堢殑鍊鹼紝鎴栬呭彨鎸囬拡鎵鎸囧悜鐨勫唴瀛樺尯鎴栧湴鍧銆?/span>
聽
鎸囬拡鐨勫兼槸鎸囬拡鏈韓瀛樺偍鐨勬暟鍊鹼紝榪欎釜鍊煎皢琚紪璇戝櫒褰撲綔涓涓湴鍧錛岃屼笉鏄竴涓竴鑸殑鏁板箋傚湪
32
浣嶇▼搴忛噷錛屾墍鏈夌被鍨嬬殑鎸囬拡鐨勫奸兘鏄竴涓?/span>
32
浣嶆暣鏁幫紝鍥犱負
32
浣嶇▼搴忛噷鍐呭瓨鍦板潃鍏ㄩ兘鏄?/span>
32
浣嶉暱銆?/span>
聽
鎸囬拡鎵鎸囧悜鐨勫唴瀛樺尯灝辨槸浠庢寚閽堢殑鍊兼墍浠h〃鐨勯偅涓唴瀛樺湴鍧寮濮嬶紝闀垮害涓?/span>
si聽zeof(
鎸囬拡鎵鎸囧悜鐨勭被鍨?/span>
)
鐨勪竴鐗囧唴瀛樺尯銆?/span>
浠ュ悗錛屾垜浠涓涓寚閽堢殑鍊兼槸
XX
錛屽氨鐩稿綋浜庤璇ユ寚閽堟寚鍚戜簡浠?/span>
XX
涓洪鍦板潃鐨勪竴鐗囧唴瀛樺尯鍩燂紱
鎴戜滑璇翠竴涓寚閽堟寚鍚戜簡鏌愬潡鍐呭瓨鍖哄煙錛屽氨鐩稿綋浜庤璇ユ寚閽堢殑鍊兼槸榪欏潡鍐呭瓨鍖哄煙鐨勯鍦板潃銆?/span>
聽
鎸囬拡鎵鎸囧悜鐨勫唴瀛樺尯鍜屾寚閽堟墍鎸囧悜鐨勭被鍨嬫槸涓や釜瀹屽叏涓嶅悓鐨勬蹇點傚湪渚嬩竴涓紝
鎸囬拡鎵鎸囧悜鐨勭被鍨嬪凡緇忔湁浜嗭紝浣嗙敱浜庢寚閽堣繕鏈垵濮嬪寲錛屾墍浠ュ畠鎵鎸囧悜鐨勫唴瀛樺尯鏄笉瀛樺湪鐨勶紝鎴栬呰鏄棤鎰忎箟鐨勩?/span>
聽
浠ュ悗錛屾瘡閬囧埌涓涓寚閽堬紝閮藉簲璇ラ棶闂細榪欎釜鎸囬拡鐨勭被鍨嬫槸浠涔堬紵鎸囬拡鎸囩殑綾誨瀷鏄粈涔堬紵璇ユ寚閽堟寚鍚戜簡鍝噷錛?/span>
聽
4
銆傛寚閽堟湰韜墍鍗犳嵁鐨勫唴瀛樺尯銆?/span>
聽
鎸囬拡鏈韓鍗犱簡澶氬ぇ鐨勫唴瀛橈紵浣犲彧瑕佺敤鍑芥暟
sizeof(
鎸囬拡鐨勭被鍨?/span>
)
嫻嬩竴涓嬪氨鐭ラ亾浜嗐?/span>
鍦?/span>
32
浣嶅鉤鍙伴噷錛屾寚閽堟湰韜崰鎹簡
4
涓瓧鑺傜殑闀垮害銆?/span>
聽
鎸囬拡鏈韓鍗犳嵁鐨勫唴瀛樿繖涓蹇靛湪鍒ゆ柇涓涓寚閽堣〃杈懼紡鏄惁鏄乏鍊兼椂寰堟湁鐢ㄣ?/span>
聽

]]> - C璇█瀛楃涓插嚱鏁版眹鎬?/title>http://m.shnenglu.com/zzh/articles/19600.htmlXiao.ZhuXiao.ZhuMon, 12 Mar 2007 01:29:00 GMThttp://m.shnenglu.com/zzh/articles/19600.htmlhttp://m.shnenglu.com/zzh/comments/19600.htmlhttp://m.shnenglu.com/zzh/articles/19600.html#Feedback0http://m.shnenglu.com/zzh/comments/commentRss/19600.htmlhttp://m.shnenglu.com/zzh/services/trackbacks/19600.html
1 /*
2聽聽*聽聽linux/lib/string.c
3聽聽*
4聽聽*聽聽Copyright (C) 1991, 1992聽聽Linus Torvalds
5聽聽*/
6
7 /*
8聽聽* stupid library routines.. The optimized versions should generally be found
9聽聽* as inline code in <asm-xx/string.h>
10聽聽*
11聽聽* These are buggy as well..
12聽聽*/
13聽聽
14 #include <linux/types.h>
15
16 char * ___strtok = NULL;
17
18 char * strcpy(char * dest,const char *src)
19 {
20聽聽聽聽聽聽聽聽聽char *tmp = dest;
21
22聽聽聽聽聽聽聽聽聽while ((*dest++ = *src++) != '\0')
23聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽/* nothing */;
24聽聽聽聽聽聽聽聽聽return tmp;
25 }
26
27 char * strncpy(char * dest,const char *src,size_t count)
28 {
29聽聽聽聽聽聽聽聽聽char *tmp = dest;
30
31聽聽聽聽聽聽聽聽聽while (count-- && (*dest++ = *src++) != '\0')
32聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽/* nothing */;
33
34聽聽聽聽聽聽聽聽聽return tmp;
35 }
36
37 char * strcat(char * dest, const char * src)
38 {
39聽聽聽聽聽聽聽聽聽char *tmp = dest;
40
41聽聽聽聽聽聽聽聽聽while (*dest)
42聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽dest++;
43聽聽聽聽聽聽聽聽聽while ((*dest++ = *src++) != '\0')
44聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽;
45
46聽聽聽聽聽聽聽聽聽return tmp;
47 }
48
49 char * strncat(char *dest, const char *src, size_t count)
50 {
51聽聽聽聽聽聽聽聽聽char *tmp = dest;
52
53聽聽聽聽聽聽聽聽聽if (count) {
54聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽while (*dest)
55聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽dest++;
56聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽while
((*dest++ = *src++)) {
57聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if
(--count == 0)
58聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽break;
59聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽}
60聽聽聽聽聽聽聽聽聽}
61
62聽聽聽聽聽聽聽聽聽return tmp;
63 }
64
65 int strcmp(const char * cs,const char * ct)
66 {
67聽聽聽聽聽聽聽聽聽register signed char __res;
68
69聽聽聽聽聽聽聽聽聽while (1) {
70聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if
((__res = *cs - *ct++) != 0 || !*cs++)
71聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽break;
72聽聽聽聽聽聽聽聽聽}
73
74聽聽聽聽聽聽聽聽聽return __res;
75 }
76
77 int strncmp(const char * cs,const char * ct,size_t count)
78 {
79聽聽聽聽聽聽聽聽聽register signed char __res = 0;
80
81聽聽聽聽聽聽聽聽聽while (count) {
82聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if
((__res = *cs - *ct++) != 0 || !*cs++)
83聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽break;
84聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽count--;
85聽聽聽聽聽聽聽聽聽}
86
87聽聽聽聽聽聽聽聽聽return __res;
88 }
89
90 char * strchr(const char * s,char c)
91 {
92聽聽聽聽聽聽聽聽聽for(; *s != c; ++s)
93聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if (*s == '\0')
94聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return
NULL;
95聽聽聽聽聽聽聽聽聽return (char *) s;
96 }
97
98 size_t strlen(const char * s)
99 {
100聽聽聽聽聽聽聽聽聽const char *sc;
101
102聽聽聽聽聽聽聽聽聽for (sc = s; *sc != '\0'; ++sc)
103聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽/* nothing */;
104聽聽聽聽聽聽聽聽聽return sc - s;
105 }
106
107 size_t strnlen(const char * s, size_t count)
108 {
109聽聽聽聽聽聽聽聽聽const char *sc;
110
111聽聽聽聽聽聽聽聽聽for (sc = s; *sc != '\0' && count--; ++sc)
112聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽/* nothing */;
113聽聽聽聽聽聽聽聽聽return sc - s;
114 }
115
116 size_t strspn(const char *s, const char *accept)
117 {
118聽聽聽聽聽聽聽聽聽const char *p;
119聽聽聽聽聽聽聽聽聽const char *a;
120聽聽聽聽聽聽聽聽聽size_t count = 0;
121
122聽聽聽聽聽聽聽聽聽for (p = s; *p != '\0'; ++p) {
123聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽for
(a = accept; *a != '\0'; ++a) {
124聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if
(*p == *a)
125聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽break;
126聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽}
127聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if (*a == '\0')
128聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return
count;
129聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽++count;
130聽聽聽聽聽聽聽聽聽}
131
132聽聽聽聽聽聽聽聽聽return count;
133 }
134
135 char * strpbrk(const char * cs,const char * ct)
136 {
137聽聽聽聽聽聽聽聽聽const char *sc1,*sc2;
138
139聽聽聽聽聽聽聽聽聽for( sc1 = cs; *sc1 != '\0'; ++sc1) {
140聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽for(
sc2 = ct; *sc2 != '\0'; ++sc2) {
141聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if
(*sc1 == *sc2)
142聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return
(char *) sc1;
143聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽}
144聽聽聽聽聽聽聽聽聽}
145聽聽聽聽聽聽聽聽聽return NULL;
146 }
147
148 char * strtok(char * s,const char * ct)
149 {
150聽聽聽聽聽聽聽聽聽char *sbegin, *send;
151
152聽聽聽聽聽聽聽聽聽sbegin聽聽= s ? s : ___strtok;
153聽聽聽聽聽聽聽聽聽if (!sbegin) {
154聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return NULL;
155聽聽聽聽聽聽聽聽聽}
156聽聽聽聽聽聽聽聽聽sbegin += strspn(sbegin,ct);
157聽聽聽聽聽聽聽聽聽if (*sbegin == '\0') {
158聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽___strtok = NULL;
159聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return( NULL );
160聽聽聽聽聽聽聽聽聽}
161聽聽聽聽聽聽聽聽聽send = strpbrk( sbegin, ct);
162聽聽聽聽聽聽聽聽聽if (send && *send != '\0')
163聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽*send++ = '\0';
164聽聽聽聽聽聽聽聽聽___strtok = send;
165聽聽聽聽聽聽聽聽聽return (sbegin);
166 }
167
168 void * memset(void * s,char c,size_t count)
169 {
170聽聽聽聽聽聽聽聽聽char *xs = (char *) s;
171
172聽聽聽聽聽聽聽聽聽while (count--)
173聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽*xs++ = c;
174
175聽聽聽聽聽聽聽聽聽return s;
176 }
177
178 char * bcopy(const char * src, char * dest, int count)
179 {
180聽聽聽聽聽聽聽聽聽char *tmp = dest;
181
182聽聽聽聽聽聽聽聽聽while (count--)
183聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽*tmp++ = *src++;
184
185聽聽聽聽聽聽聽聽聽return dest;
186 }
187
188 void * memcpy(void * dest,const void *src,size_t count)
189 {
190聽聽聽聽聽聽聽聽聽char *tmp = (char *) dest, *s = (char *) src;
191
192聽聽聽聽聽聽聽聽聽while (count--)
193聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽*tmp++ = *s++;
194
195聽聽聽聽聽聽聽聽聽return dest;
196 }
197
198 void * memmove(void * dest,const void *src,size_t count)
199 {
200聽聽聽聽聽聽聽聽聽char *tmp, *s;
201
202聽聽聽聽聽聽聽聽聽if (dest <= src) {
203聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽tmp = (char *) dest;
204聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽s = (char *) src;
205聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽while (count--)
206聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽*tmp++
= *s++;
207聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽}
208聽聽聽聽聽聽聽聽聽else {
209聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽tmp
= (char *) dest + count;
210聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽s
= (char *) src + count;
211聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽while (count--)
212聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽*--tmp
= *--s;
213聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽}
214
215聽聽聽聽聽聽聽聽聽return dest;
216 }
217
218 int memcmp(const void * cs,const void * ct,size_t count)
219 {
220聽聽聽聽聽聽聽聽聽const unsigned char *su1, *su2;
221聽聽聽聽聽聽聽聽聽signed char res = 0;
222
223聽聽聽聽聽聽聽聽聽for( su1 = cs, su2 = ct; 0 < count; ++su1, ++su2, count--)
224聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if
((res = *su1 - *su2) != 0)
225聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽break;
226聽聽聽聽聽聽聽聽聽return res;
227 }
228
229 /*
230聽聽* find the first occurrence of byte 'c', or 1 past the area if none
231聽聽*/
232 void * memscan(void * addr, unsigned char c, size_t size)
233 {
234聽聽聽聽聽聽聽聽聽unsigned char * p = (unsigned char *) addr;
235
236聽聽聽聽聽聽聽聽聽while (size) {
237聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽if (*p == c)
238聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽return
(void *) p;
239聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽p++;
240聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽size--;
241聽聽聽聽聽聽聽聽聽}
242聽聽聽聽聽聽聽聽聽return (void *) p;
243 }

]]> 青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
国产精品影院在线观看|
欧美一级黄色网|
久久久久一区二区三区四区|
久久精品综合网|
久久久久九九九九|
久久综合综合久久综合|
亚洲高清色综合|
91久久国产综合久久蜜月精品
|
亚洲国产专区校园欧美|
精品av久久707|
一本久久综合亚洲鲁鲁|
亚洲欧美日韩国产精品
|
欧美福利视频一区|
亚洲国产精品热久久|
99精品国产热久久91蜜凸|
亚洲男女自偷自拍|
老司机aⅴ在线精品导航|
欧美日韩福利视频|
国产精品夜夜夜|
亚洲国内精品在线|
亚洲综合999|
欧美大香线蕉线伊人久久国产精品|
亚洲黄色尤物视频|
亚洲欧美在线一区|
欧美日韩人人澡狠狠躁视频|
国产一区二区三区在线观看精品|
91久久中文|
欧美在线观看一区二区三区|
欧美国产日本韩|
午夜天堂精品久久久久|
欧美久久久久|
精品51国产黑色丝袜高跟鞋|
亚洲一区二区在线播放|
欧美成年人视频|
亚洲午夜精品一区二区|
美脚丝袜一区二区三区在线观看|
国产精品你懂的在线欣赏|
亚洲精品久久久久久下一站
|
亚洲欧美日韩中文播放|
欧美激情久久久久|
欧美一区二区三区在线观看|
国产精品久久午夜|
日韩亚洲欧美成人|
欧美成人精品在线观看|
国产深夜精品|
亚洲影院免费观看|
亚洲人成网站777色婷婷|
久久乐国产精品|
国产综合婷婷|
久久一区视频|
欧美专区日韩专区|
国产精品资源|
欧美影院视频|
亚洲综合第一页|
国产精品天天看|
欧美一区二区三区免费大片|
亚洲图片欧洲图片日韩av|
欧美网站在线观看|
亚洲欧美日韩一区二区在线
|
亚洲欧洲精品一区二区三区
|
国产一区二区三区不卡在线观看|
亚洲久久一区二区|
欧美激情一区三区|
欧美xx69|
亚洲精品一级|
日韩一级片网址|
国产精品福利在线|
亚洲一区二区三区影院|
9人人澡人人爽人人精品|
欧美日韩一区成人|
亚洲自拍偷拍网址|
欧美在线91|
在线成人av.com|
亚洲国产高清aⅴ视频|
欧美激情亚洲|
亚洲欧美综合精品久久成人|
午夜免费久久久久|
亚洲成在线观看|
亚洲黄一区二区三区|
欧美日韩精品中文字幕|
亚洲欧美影音先锋|
久久理论片午夜琪琪电影网|
最新中文字幕一区二区三区|
国产精品第2页|
久久免费精品日本久久中文字幕|
久久在线免费观看|
一区二区三区.www|
亚洲欧美一区二区三区久久
|
欧美一区二区在线视频|
欧美在线视频在线播放完整版免费观看
|
亚洲一区二区三区乱码aⅴ|
亚洲天堂成人|
尤物九九久久国产精品的特点|
亚洲第一区在线|
国产精品视频第一区|
久久久久久久性|
欧美日韩成人|
久久综合999|
国产精品久久久久久亚洲毛片|
欧美成年视频|
国产精品资源|
亚洲免费久久|
亚洲国产高清aⅴ视频|
中文有码久久|
91久久在线|
久久精品1区|
午夜精品久久久久久久男人的天堂
|
国产一区二区在线观看免费|
久久夜色精品国产欧美乱|
午夜精品久久久久久久99热浪潮
|
老巨人导航500精品|
午夜精品久久久久久久|
欧美黄色免费网站|
久久综合国产精品台湾中文娱乐网|
欧美午夜精品久久久久久人妖|
蜜臀a∨国产成人精品|
国产精品拍天天在线|
亚洲国产欧美久久|
激情丁香综合|
欧美一区观看|
欧美亚洲色图校园春色|
欧美啪啪成人vr|
亚洲第一精品影视|
亚洲第一精品在线|
久久精品亚洲精品国产欧美kt∨|
亚洲影院在线观看|
欧美日韩视频一区二区三区|
亚洲国产欧美一区|
亚洲国产一区二区三区高清|
久久人91精品久久久久久不卡|
久久久国产视频91|
国产亚洲一级|
性做久久久久久|
久久国内精品视频|
国产一区二区三区高清
|
欧美一区二区久久久|
久久激情综合网|
国产一区高清视频|
欧美中文字幕第一页|
久久精品欧美日韩|
狠狠色综合一区二区|
久久男人资源视频|
欧美大片一区二区|
99亚洲一区二区|
欧美午夜一区二区|
性感少妇一区|
男女视频一区二区|
亚洲美女精品一区|
欧美视频观看一区|
亚洲欧美日韩精品久久亚洲区|
久久av一区二区三区漫画|
国产日韩一区二区三区|
久久精品道一区二区三区|
欧美二区视频|
亚洲天堂第二页|
国产欧美亚洲日本|
久久在线免费观看|
99在线精品视频在线观看|
久久国产视频网站|
亚洲日本中文字幕|
欧美午夜片在线观看|
午夜一区不卡|
亚洲福利小视频|
亚洲欧美激情在线视频|
国产视频亚洲|
欧美激情bt|
亚洲欧美在线另类|
亚洲第一综合天堂另类专|
亚洲一级二级|
影音先锋久久|
欧美高清视频在线|
国产亚洲综合精品|
欧美成人三级在线|
亚洲一区三区在线观看|
免费观看成人鲁鲁鲁鲁鲁视频|
亚洲美女黄色片|
激情六月综合|
国产精品国产一区二区|
美女网站在线免费欧美精品|
亚洲女同性videos|
亚洲欧洲精品一区|
女女同性精品视频|
性做久久久久久免费观看欧美|
亚洲精品乱码久久久久久日本蜜臀|
国产精品亚洲综合久久|
欧美精品自拍|
美国十次了思思久久精品导航|
亚洲综合精品一区二区|
亚洲人成在线观看网站高清|
久久躁日日躁aaaaxxxx|
亚洲欧美日韩系列|
一区二区激情小说|
亚洲黄色尤物视频|
激情久久综艺|
国产一区二区三区久久悠悠色av
|
99精品免费|
亚洲激情视频网站|
永久免费毛片在线播放不卡|
国产亚洲在线|
国产亚洲精品美女|