锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲欧美日韩久久精品,99国产精品久久久,欧美日韩精品一区二区在线播放 http://m.shnenglu.com/true/category/3840.htmlzh-cnWed, 29 Dec 2010 16:20:32 GMTWed, 29 Dec 2010 16:20:32 GMT60C++涓嬌鐢–#鐨凙pp.Config閰嶇疆鏂囦歡http://m.shnenglu.com/true/archive/2010/12/29/137630.htmltruetrueTue, 28 Dec 2010 16:25:00 GMThttp://m.shnenglu.com/true/archive/2010/12/29/137630.htmlhttp://m.shnenglu.com/true/comments/137630.htmlhttp://m.shnenglu.com/true/archive/2010/12/29/137630.html#Feedback0http://m.shnenglu.com/true/comments/commentRss/137630.htmlhttp://m.shnenglu.com/true/services/trackbacks/137630.html
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
     
    
<appSettings>

        
<add key="Ip" value="localhost"/>
        
<add key="Port" value="8888"/>
        
<add key="ServiceName" value="Indexer"/>


    
</appSettings>
    
</configuration>
閫氳繃鍦╝ppSettings閲岄潰娣誨姞add鍏冪礌錛屽嵆鍙疄鐜伴氬父鐨勯厤緗姛鑳斤紝鏇撮噸瑕佺殑鏄紝鍙互榪涗竴姝ユ墿灞曚負澶氱駭鐨勬爲褰㈢粨鏋勶紝涓嶪ni鏍煎紡鐩告瘮錛屾洿鐩磋錛屽彲璇繪ф洿寮猴紝涓嬮潰鏄熀浜嶤Markup錛?a >http://www.firstobject.com/錛夌殑涓涓畝鍗曞疄鐜幫細
澶存枃浠跺涓嬶細
#pragma once

#include 
<string>
#include 
<map>


class AppConfig
{
public:
    AppConfig(
void);
    
~AppConfig(void);

    
int        GetInt(std::string key);
    std::
string    GetString(std::string key);
private:
    std::map
<std::string,std::string> config_map_;
}
;
 
extern AppConfig appConfig;
婧愭枃浠跺涓嬶細

#include 
"AppConfig.h"
#include 
"Markup.h"

AppConfig appConfig;


AppConfig::AppConfig(
void)
{
    CMarkup parser;
    
if (!parser.Load( "App.Config"  ))
    
{
        
return;        
    }

    
if (parser.FindChildElem("appSettings"))
    
{
        parser.IntoElem();
        
while (parser.FindChildElem("add"))
        
{
            std::
string key = parser.GetChildAttrib("key");
            std::
string value = parser.GetChildAttrib("value");
            config_map_[key] 
= value;
        }

        parser.OutOfElem();
    }

    
}


AppConfig::
~AppConfig(void)
{
}


int AppConfig::GetInt( std::string key )
{
    
if (config_map_.find(key) != config_map_.end())
    
{
        
return atoi(config_map_[key].c_str());
    }

    
else
    
{
        
return 0;
    }

}


std::
string AppConfig::GetString( std::string key )
{
    
if (config_map_.find(key) != config_map_.end())
    
{
        
return config_map_[key];
    }

    
else
    
{
        
return "";
    }

}

嫻嬭瘯浠g爜涓猴細
// MarkupTest.cpp : 瀹氫箟鎺у埗鍙板簲鐢ㄧ▼搴忕殑鍏ュ彛鐐廣?br>//

#include 
"stdafx.h"

#include 
"AppConfig.h"
#include 
<iostream>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{    
    cout 
<< appConfig.GetString("Ip")  << "-----" << appConfig.GetInt("Port")  << "----" << appConfig.GetString("ServiceName"<< endl;
    
return 0;
}




true 2010-12-29 00:25 鍙戣〃璇勮
]]>
vs2008璋冭瘯鍚庢帶鍒跺彴紿楀彛鍏充笉浜哰杞笘]http://m.shnenglu.com/true/archive/2010/12/12/136225.htmltruetrueSun, 12 Dec 2010 05:16:00 GMThttp://m.shnenglu.com/true/archive/2010/12/12/136225.htmlhttp://m.shnenglu.com/true/comments/136225.htmlhttp://m.shnenglu.com/true/archive/2010/12/12/136225.html#Feedback0http://m.shnenglu.com/true/comments/commentRss/136225.htmlhttp://m.shnenglu.com/true/services/trackbacks/136225.html緇堜簬紕板埌榪欎釜闂浜嗭紝鍘熸枃閾炬帴錛?a >http://hi.baidu.com/zzy_cqok/blog/item/46ee33998777f3056f068c2b.html

vs2008璋冭瘯鍚庢帶鍒跺彴紿楀彛鍏充笉浜?010-07-29 16:19
鏈榪戠敤Visual Studio 2008 鍐欎竴浜涙帶鍒跺彴紼嬪簭錛岃皟璇曞悗鐨勬椂鍊欙紝褰撹蛋鍒板畬鎴愮殑鏃跺欙紝榪欎釜鎺у埗鍙扮▼搴忕殑紿楀彛灝卞叧涓嶄簡浜嗐傚啀璋冭瘯鐨勬椂鍊欏氨浼氬嚭鐜頒竴涓柊鐨勬帶鍒跺彴紼嬪簭銆?br>鍦ㄤ換鍔$鐞嗗櫒榪樺彲浠ョ湅鍒拌繖涓獥鍙o紝浣嗘槸鍏充笉鎺変簡銆傛劅瑙夎繖涓帶鍒跺彴紼嬪簭宸茬粡澶辨帶浜嗐?br>铏界劧榪欎釜瀵圭數鑴戣繍琛屾病鏈夊獎鍝嶏紝浣嗚繕鏄緢涓嶇埥銆傝屼笖鏈鍚庡叧鏈鴻繕鏈夐棶棰橈紝瀵艱嚧涓嶈兘鍏蟲満銆?br>鎵懼埌涓浜涚浉鍏崇殑緗戦〉涔熻璁虹殑錛屾渶鍚庣粨璁烘槸windows鐨勪竴涓洿鏂癒B978037瀵艱嚧cress.exe鍑轟簡涓浜涢棶棰樸?br>瑙e喅鍔炴硶錛氬垹闄B978037鏇存柊錛屽垹闄ょ殑鍔炴硶鏄湪鎺у埗闈㈡澘鐨勬坊鍔犳垨鍒犻櫎紼嬪簭闈㈡澘閲岋紝鍕鵑夋樉紺烘洿鏂幫紝鎵懼埌KB978037鏇存柊錛屽垹闄ゃ?br>闄勫埆浜虹殑璁ㄨ璁板綍錛?a >http://social.msdn.microsoft.com/Forums/en-US/vsdebug/thread/e6d4a4f5-7002-401a-90e1-6174d7f9e3ca/
 

true 2010-12-12 13:16 鍙戣〃璇勮
]]>
C++瀹炵幇鐨凪D5綆楁硶http://m.shnenglu.com/true/archive/2010/09/04/125888.htmltruetrueSat, 04 Sep 2010 12:03:00 GMThttp://m.shnenglu.com/true/archive/2010/09/04/125888.htmlhttp://m.shnenglu.com/true/comments/125888.htmlhttp://m.shnenglu.com/true/archive/2010/09/04/125888.html#Feedback1http://m.shnenglu.com/true/comments/commentRss/125888.htmlhttp://m.shnenglu.com/true/services/trackbacks/125888.htmlhttp://m.shnenglu.com/Files/true/md5lib.rar
         浣跨敤璇存槑錛?br>         錛?錛夋簮浠g爜涓昏鎻愪緵浜哅D5綾伙紝鍦ㄧ被涔嬪鎻愪緵浜嗕袱涓嚱鏁幫細
                              std::string getMD5(std::ifstream& stream);//榪欎釜鏄枃浠舵帴鍙o紝璁$畻鏂囦歡鍐呭鐨凪D5
                              std::string getMD5(const char* str,unsigned int str_len);//榪欎釜灝變笉鐢ㄨ浜?br>鎯崇爺絀朵唬鐮佺殑璇濓紝鍙傝僊D5綾葷殑瀹炵幇錛屽鏋滃彧鏄敤鐨勮瘽錛屽彧闇浼氱敤涓婇潰鐨勬帴鍙e嵆鍙?br>         錛?錛塻td::string getMD5(const char* str,unsigned int str_len)鐨勪嬌鐢細
                                    string sName = "MD5";
                                    string sMD5  = getMD5(sName.c_str(),sName.length());
姝ゆ椂sMD5鐨勫間負錛?f138a09169b250e9dcb378140907378
         錛?錛塻td::string getMD5(std::ifstream& stream)鐨勪嬌鐢細鍒涘緩md5.txt錛屽唴瀹逛負錛歁D5
                                    ifstream file("md5.txt");
                                    string sMD5File = getMD5(file);
sMD5File 鐨勪篃鏄細7f138a09169b250e9dcb378140907378
         錛?錛塴inux涓嬫彁渚沵d5sum,灝嗕笂闈㈢殑md5.txt浼犲埌linux涓嬶紝鐒跺悗錛歮d5sum md5.txt錛岀粨鏋滃拰涓婇潰涓鏍楓傛敞鎰忥紝涓瀹氳紜md5.txt鍐呭涓?涓瓧鑺傦紝濡傛灉鐩存帴鐧誨綍涓妉inux錛岀敤vi鍒涘緩md5.txt錛岀劧鍚庤緭鍏?#8220;MD5”錛屾渶鍚庝繚瀛橈紝榪欑鏂瑰紡linux涓嬩細榪藉姞涓涓┖琛岋紝瀵艱嚧MD5鍊間笉涓鑷淬?br>         錛?錛夊畨鍏ㄦ剰璇嗚鏍戠珛錛岃繖涓綉绔?a >http://www.cmd5.com/浠ョ綉欏靛艦寮忔彁渚沵d5瑙e瘑錛屽皢涓婇潰鐨?f138a09169b250e9dcb378140907378鐨勮緭鍏ワ紝鍑犵鏃墮棿錛屽緱鍒癕D5

true 2010-09-04 20:03 鍙戣〃璇勮
]]>
C++緇撴瀯浣撳簭鍒楀寲鐨勪竴鐐規濊?/title><link>http://m.shnenglu.com/true/archive/2009/09/24/97087.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Wed, 23 Sep 2009 19:03:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2009/09/24/97087.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/97087.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2009/09/24/97087.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/97087.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/97087.html</trackback:ping><description><![CDATA[     鎽樿: C++緇撴瀯浣撳簭鍒楀寲 libprotobuf  <a href='http://m.shnenglu.com/true/archive/2009/09/24/97087.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/true/aggbug/97087.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2009-09-24 03:03 <a href="http://m.shnenglu.com/true/archive/2009/09/24/97087.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瀵瑰熀鏈被鍨嬬殑鍐嶅寘瑁咃紝鏂逛究浜嗙Щ妞?/title><link>http://m.shnenglu.com/true/archive/2009/02/02/72782.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Mon, 02 Feb 2009 02:51:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2009/02/02/72782.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/72782.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2009/02/02/72782.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/72782.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/72782.html</trackback:ping><description><![CDATA[     鎽樿: 瀵瑰熀鏈被鍨嬬殑鍐嶅寘瑁?nbsp; <a href='http://m.shnenglu.com/true/archive/2009/02/02/72782.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/true/aggbug/72782.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2009-02-02 10:51 <a href="http://m.shnenglu.com/true/archive/2009/02/02/72782.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>linux涓嬩俊鍙峰鐞嗗嚱鏁板疄鐜扮殑涓鐐圭悊瑙?/title><link>http://m.shnenglu.com/true/archive/2009/01/15/72072.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Thu, 15 Jan 2009 03:39:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2009/01/15/72072.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/72072.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2009/01/15/72072.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/72072.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/72072.html</trackback:ping><description><![CDATA[<p>浠g爜鎿嶄綔姝ラ濡備笅錛?br><br>[tqg@localhost test]$ vi test.cpp </p> <p><br>#include <pthread.h><br>#include <signal.h><br>#include <stdio.h><br>#include <unistd.h></p> <p>void signal_handler(int sig)<br>{<br>        printf("catch signal: %d,thread id = %u\n",sig,pthread_self());<br>        pthread_exit(0);<br>}</p> <p>void* thread_handler(void*arg)<br>{<br>        signal(SIGQUIT,signal_handler);</p> <p>        printf("thread arg = %s\n",(char*)arg);</p> <p>        sleep(10);<br>        printf("in thread\n");</p> <p>        return (void*)0;<br>} </p> <p>int main()<br>{<br>        char* pArg = "hello";<br>        pthread_t tid;<br>        pthread_create(&tid,NULL,thread_handler,pArg);</p> <p>        printf("main thread id = %u\n",pthread_self());<br>        sleep(2);</p> <p>        printf("killing now\n");<br>        pthread_kill(tid,SIGQUIT);</p> <p>        sleep(20);</p> <p>        printf("exit main now\n");</p> <p>        return 0;<br>}<br>~<br>~<br>~<br>~<br>"test.cpp" 42L, 648C written<br>[tqg@localhost test]$ g++ -o test test.cpp -lpthread<br>[tqg@localhost test]$ ./test <br>main thread id = 3086875296<br>thread arg = hello<br>killing now<br>catch signal: 3,thread id = 3086871472<br>exit main now<br>[tqg@localhost test]$ <br><br>鍙互鐪嬪嚭錛屼俊鍙峰鐞嗗嚱鏁扮殑鎵ц鏄湪瑕佹崟鑾蜂俊鍙風殑瀛愮嚎紼媡hread_handler鐨勪笂涓嬫枃涓墽琛岀殑銆?/p> <img src ="http://m.shnenglu.com/true/aggbug/72072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2009-01-15 11:39 <a href="http://m.shnenglu.com/true/archive/2009/01/15/72072.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鐢℅DB璋冭瘯紼嬪簭---杞創錛岄潪甯稿叏闈㈢殑璋冭瘯鎶宸?/title><link>http://m.shnenglu.com/true/archive/2009/01/11/71749.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Sun, 11 Jan 2009 12:21:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2009/01/11/71749.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/71749.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2009/01/11/71749.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/71749.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/71749.html</trackback:ping><description><![CDATA[鐢℅DB璋冭瘯紼嬪簭 <br>GDB鏄竴涓己澶х殑鍛戒護琛岃皟璇曞伐鍏楓傚ぇ瀹剁煡閬撳懡浠よ鐨勫己澶у氨鏄湪浜庯紝鍏跺彲浠ュ艦鎴愭墽琛屽簭<br>鍒楋紝褰㈡垚鑴氭湰銆俇NIX涓嬬殑杞歡鍏ㄦ槸鍛戒護琛岀殑錛岃繖緇欑▼搴忓紑鍙戞彁浠d緵浜嗘瀬澶х殑渚垮埄錛屽懡浠よ<br>杞歡鐨勪紭鍔垮湪浜庯紝瀹冧滑鍙互闈炲父瀹規槗鐨勯泦鎴愬湪涓璧鳳紝浣跨敤鍑犱釜綆鍗曠殑宸叉湁宸ュ叿鐨勫懡浠わ紝灝卞彲<br>浠ュ仛鍑轟竴涓潪甯稿己澶х殑鍔熻兘銆?<br>浜庢槸UNIX涓嬬殑杞歡姣擶indows涓嬬殑杞歡鏇磋兘鏈夋満鍦扮粨鍚堬紝鍚勮嚜鍙戞尌鍚勮嚜鐨勯暱澶勶紝緇勫悎鎴?br>鏇翠負寮哄姴鐨勫姛鑳姐傝學indows涓嬬殑鍥懼艦杞歡鍩烘湰涓婃槸鍚勮嚜涓鴻惀錛屼簰鐩鎬笉鑳借皟鐢紝寰堜笉鍒╀簬<br>鍚勭杞歡鐨勭浉浜掗泦鎴愩傚湪榪欓噷騫朵笉鏄鍜學indows鍋氫釜浠涔堟瘮杈冿紝鎵璋?#8220;瀵告湁鎵闀匡紝灝烘湁<br>鎵鐭?#8221;錛屽浘褰㈠寲宸ュ叿榪樻槸鏈変笉濡傚懡浠よ鐨勫湴鏂廣?<br>鐢℅DB璋冭瘯紼嬪簭 <br>GDB姒傝堪 <br>鈥斺斺斺?<br>GDB鏄疓NU寮婧愮粍緇囧彂甯冪殑涓涓己澶х殑UNIX涓嬬殑紼嬪簭璋冭瘯宸ュ叿銆傛垨璁革紝鍚勪綅姣旇緝鍠滄閭?br>縐嶅浘褰㈢晫闈㈡柟寮忕殑錛屽儚VC銆丅CB絳塈DE鐨勮皟璇曪紝浣嗗鏋滀綘鏄湪UNIX騫沖彴涓嬪仛杞歡錛屼綘<br>浼氬彂鐜癎DB榪欎釜璋冭瘯宸ュ叿鏈夋瘮VC銆丅CB鐨勫浘褰㈠寲璋冭瘯鍣ㄦ洿寮哄ぇ鐨勫姛鑳姐傛墍璋?#8220;瀵告湁鎵闀匡紝<br>灝烘湁鎵鐭?#8221;灝辨槸榪欎釜閬撶悊銆?<br>涓鑸潵璇達紝GDB涓昏甯繖浣犲畬鎴愪笅闈㈠洓涓柟闈㈢殑鍔熻兘錛?<br>1銆佸惎鍔ㄤ綘鐨勭▼搴忥紝鍙互鎸夌収浣犵殑鑷畾涔夌殑瑕佹眰闅忓績鎵嬈茬殑榪愯紼嬪簭銆?<br>2銆佸彲璁╄璋冭瘯鐨勭▼搴忓湪浣犳墍鎸囧畾鐨勮皟緗殑鏂偣澶勫仠浣忋傦紙鏂偣鍙互鏄潯浠惰〃杈懼紡錛?<br>3銆佸綋紼嬪簭琚仠浣忔椂錛屽彲浠ユ鏌ユ鏃朵綘鐨勭▼搴忎腑鎵鍙戠敓鐨勪簨銆?<br>4銆佸姩鎬佺殑鏀瑰彉浣犵▼搴忕殑鎵ц鐜銆?<br>浠庝笂闈㈢湅鏉ワ紝GDB鍜屼竴鑸殑璋冭瘯宸ュ叿娌℃湁浠涔堜袱鏍鳳紝鍩烘湰涓婁篃鏄畬鎴愯繖浜涘姛鑳斤紝涓嶈繃鍦ㄧ粏<br>鑺備笂錛屼綘浼氬彂鐜癎DB榪欎釜璋冭瘯宸ュ叿鐨勫己澶э紝澶у鍙兘姣旇緝涔犳儻浜嗗浘褰㈠寲鐨勮皟璇曞伐鍏鳳紝浣嗘湁<br>鏃跺欙紝鍛戒護琛岀殑璋冭瘯宸ュ叿鍗存湁鐫鍥懼艦鍖栧伐鍏鋒墍涓嶈兘瀹屾垚鐨勫姛鑳姐傝鎴戜滑涓涓鐪嬫潵銆?<br>涓涓皟璇曠ず渚?<br>鈥斺斺斺斺斺?<br>婧愮▼搴忥細tst.c <br>1 #include <br>2 <br>3 int func(int n) <br>4 { <br>5 int sum=0,i; <br>6 for(i=0; i<7; i++) { <p>8 sum+=i; <br>9 } <br>10 return sum; <br>11 } <br>12 <br>13 <br>14 main() <br>15 { <br>16 int i; <br>17 long result = 0; <br>18 for(i=1; i<=100; i++) <br>19 { <br>20 result += i; <br>21 } <br>22 <br>23 printf("result[1-100] = %d \n", result ); <br>24 printf("result[1-250] = %d \n", func(250) ); <br>25 } <br>緙栬瘧鐢熸垚鎵ц鏂囦歡錛氾紙Linux涓嬶級 <br>hchen/test> cc -g tst.c -o tst <br>浣跨敤GDB璋冭瘯錛?<br>hchen/test> gdb tst <---------- 鍚姩GDB <br>GNU gdb 5.1.1 <br>Copyright 2002 Free Software Foundation, Inc. <br>GDB is free software, covered by the GNU General Public License, and you are <br>welcome to change it and/or distribute copies of it under certain conditions. <br>Type "show copying" to see the conditions. <br>There is absolutely no warranty for GDB. Type "show warranty" for details. <br>This GDB was configured as "i386-suse-linux"... <br>(gdb) l <-------------------- l鍛戒護鐩稿綋浜巐ist錛屼粠絎竴琛屽紑濮嬩緥鍑哄師鐮併?<br>1 #include <br>2 <br>3 int func(int n) <br>4 { <br>5 int sum=0,i; <br>6 for(i=0; i 7 { <br>8 sum+=i; <br>9 } <br>10 return sum; <br>(gdb) <-------------------- 鐩存帴鍥炶濺琛ㄧず錛岄噸澶嶄笂涓嬈″懡浠?<br>11 } </p> <p>12 <br>13 <br>14 main() <br>15 { <br>16 int i; <br>17 long result = 0; <br>18 for(i=1; i<=100; i++) <br>19 { <br>20 result += i; <br>(gdb) break 16 <-------------------- 璁劇疆鏂偣錛屽湪婧愮▼搴忕16琛屽銆?<br>Breakpoint 1 at 0x8048496: file tst.c, line 16. <br>(gdb) break func <-------------------- 璁劇疆鏂偣錛屽湪鍑芥暟func()鍏ュ彛澶勩?<br>Breakpoint 2 at 0x8048456: file tst.c, line 5. <br>(gdb) info break <-------------------- 鏌ョ湅鏂偣淇℃伅銆?<br>Num Type Disp Enb Address What <br>1 breakpoint keep y 0x08048496 in main at tst.c:16 <br>2 breakpoint keep y 0x08048456 in func at tst.c:5 <br>(gdb) r <--------------------- 榪愯紼嬪簭錛宺un鍛戒護綆鍐?<br>Starting program: /home/hchen/test/tst <br>Breakpoint 1, main () at tst.c:17 <---------- 鍦ㄦ柇鐐瑰鍋滀綇銆?<br>17 long result = 0; <br>(gdb) n <--------------------- 鍗曟潯璇彞鎵ц錛宯ext鍛戒護綆鍐欍?<br>18 for(i=1; i<=100; i++) <br>(gdb) n <br>20 result += i; <br>(gdb) n <br>18 for(i=1; i<=100; i++) <br>(gdb) n <br>20 result += i; <br>(gdb) c <--------------------- 緇х畫榪愯紼嬪簭錛宑ontinue鍛戒護綆鍐欍?<br>Continuing. <br>result[1-100] = 5050 <----------紼嬪簭杈撳嚭銆?<br>Breakpoint 2, func (n=250) at tst.c:5 <br>5 int sum=0,i; <br>(gdb) n <br>6 for(i=1; i<=n; i++) <br>(gdb) p i <--------------------- 鎵撳嵃鍙橀噺i鐨勫鹼紝print鍛戒護綆鍐欍?<br>$1 = 134513808 <br>(gdb) n <br>8 sum+=i; <br>(gdb) n <br>6 for(i=1; i<=n; i++) </p> <p>(gdb) p sum <br>$2 = 1 <br>(gdb) n <br>8 sum+=i; <br>(gdb) p i <br>$3 = 2 <br>(gdb) n <br>6 for(i=1; i<=n; i++) <br>(gdb) p sum <br>$4 = 3 <br>(gdb) bt <--------------------- 鏌ョ湅鍑芥暟鍫嗘爤銆?<br>#0 func (n=250) at tst.c:5 <br>#1 0x080484e4 in main () at tst.c:24 <br>#2 0x400409ed in __libc_start_main () from /lib/libc.so.6 <br>(gdb) finish <--------------------- 閫鍑哄嚱鏁般?<br>Run till exit from #0 func (n=250) at tst.c:5 <br>0x080484e4 in main () at tst.c:24 <br>24 printf("result[1-250] = %d \n", func(250) ); <br>Value returned is $6 = 31375 <br>(gdb) c <--------------------- 緇х畫榪愯銆?<br>Continuing. <br>result[1-250] = 31375 <----------紼嬪簭杈撳嚭銆?<br>Program exited with code 027. <--------紼嬪簭閫鍑猴紝璋冭瘯緇撴潫銆?<br>(gdb) q <--------------------- 閫鍑篻db銆?<br>hchen/test> <br>濂戒簡錛屾湁浜嗕互涓婄殑鎰熸ц璇嗭紝榪樻槸璁╂垜浠潵緋葷粺鍦拌璇嗕竴涓媑db鍚с?<br>浣跨敤GDB <br>鈥斺斺斺?<br>涓鑸潵璇碐DB涓昏璋冭瘯鐨勬槸C/C++鐨勭▼搴忋傝璋冭瘯C/C++鐨勭▼搴忥紝棣栧厛鍦ㄧ紪璇戞椂錛屾垜浠繀<br>欏昏鎶婅皟璇曚俊鎭姞鍒板彲鎵ц鏂囦歡涓備嬌鐢ㄧ紪璇戝櫒錛坈c/gcc/g++錛夌殑 -g 鍙傛暟鍙互鍋氬埌榪欎竴鐐廣?br>濡傦細 <br>> cc -g hello.c -o hello <br>> g++ -g hello.cpp -o hello <br>濡傛灉娌℃湁-g錛屼綘灝嗙湅涓嶈紼嬪簭鐨勫嚱鏁板悕銆佸彉閲忓悕錛屾墍浠f浛鐨勫叏鏄繍琛屾椂鐨勫唴瀛樺湴鍧銆傚綋浣犵敤<br>-g鎶婅皟璇曚俊鎭姞鍏ヤ箣鍚庯紝騫舵垚鍔熺紪璇戠洰鏍囦唬鐮佷互鍚庯紝璁╂垜浠潵鐪嬬湅濡備綍鐢╣db鏉ヨ皟璇曚粬銆?<br>鍚姩GDB鐨勬柟娉曟湁浠ヤ笅鍑犵錛?</p> <p>1銆乬db <br>program涔熷氨鏄綘鐨勬墽琛屾枃浠訛紝涓鑸湪褰撶劧鐩綍涓嬨?<br>2銆乬db core <br>鐢╣db鍚屾椂璋冭瘯涓涓繍琛岀▼搴忓拰core鏂囦歡錛宑ore鏄▼搴忛潪娉曟墽琛屽悗core dump鍚庝駭鐢熺殑鏂囦歡銆?<br>3銆乬db <br>濡傛灉浣犵殑紼嬪簭鏄竴涓湇鍔$▼搴忥紝閭d箞浣犲彲浠ユ寚瀹氳繖涓湇鍔$▼搴忚繍琛屾椂鐨勮繘紼婭D銆俫db浼氳嚜<br>鍔╝ttach涓婂幓錛屽茍璋冭瘯浠栥俻rogram搴旇鍦≒ATH鐜鍙橀噺涓悳绱㈠緱鍒般?<br>GDB鍚姩鏃訛紝鍙互鍔犱笂涓浜汫DB鐨勫惎鍔ㄥ紑鍏籌紝璇︾粏鐨勫紑鍏沖彲浠ョ敤gdb -help鏌ョ湅銆傛垜鍦ㄤ笅<br>闈㈠彧渚嬩婦涓浜涙瘮杈冨父鐢ㄧ殑鍙傛暟錛?<br>-symbols <br>-s <br>浠庢寚瀹氭枃浠朵腑璇誨彇絎﹀彿琛ㄣ?<br>-se file <br>浠庢寚瀹氭枃浠朵腑璇誨彇絎﹀彿琛ㄤ俊鎭紝騫舵妸浠栫敤鍦ㄥ彲鎵ц鏂囦歡涓?<br>-core <br>-c <br>璋冭瘯鏃禼ore dump鐨刢ore鏂囦歡銆?<br>-directory <br>-d <br>鍔犲叆涓涓簮鏂囦歡鐨勬悳绱㈣礬寰勩傞粯璁ゆ悳绱㈣礬寰勬槸鐜鍙橀噺涓璓ATH鎵瀹氫箟鐨勮礬寰勩?<br>GDB鐨勫懡浠ゆ璨?<br>鈥斺斺斺斺斺斺?<br>鍚姩gdb鍚庯紝灝變綘琚甫鍏db鐨勮皟璇曠幆澧冧腑錛屽氨鍙互浣跨敤gdb鐨勫懡浠ゅ紑濮嬭皟璇曠▼搴忎簡錛実db<br>鐨勫懡浠ゅ彲浠ヤ嬌鐢╤elp鍛戒護鏉ユ煡鐪嬶紝濡備笅鎵紺猴細 <br>/home/hchen> gdb <br>GNU gdb 5.1.1 <br>Copyright 2002 Free Software Foundation, Inc. <br>GDB is free software, covered by the GNU General Public License, and you are <br>welcome to change it and/or distribute copies of it under certain conditions. <br>Type "show copying" to see the conditions. <br>There is absolutely no warranty for GDB. Type "show warranty" for details. <br>This GDB was configured as "i386-suse-linux". <br>(gdb) help </p> <p>List of classes of commands: <br>aliases -- Aliases of other commands <br>breakpoints -- Making program stop at certain points <br>data -- Examining data <br>files -- Specifying and examining files <br>internals -- Maintenance commands <br>obscure -- Obscure features <br>running -- Running the program <br>stack -- Examining the stack <br>status -- Status inquiries <br>support -- Support facilities <br>tracepoints -- Tracing of program execution without stopping the program <br>user-defined -- User-defined commands <br>Type "help" followed by a class name for a list of commands in that class. <br>Type "help" followed by command name for full documentation. <br>Command name abbreviations are allowed if unambiguous. <br>(gdb) <br>gdb鐨勫懡浠ゅ緢澶氾紝gdb鎶婁箣鍒嗘垚璁稿涓綾匯俬elp鍛戒護鍙槸渚嬪嚭gdb鐨勫懡浠ょ綾伙紝濡傛灉瑕佺湅<br>縐嶇被涓殑鍛戒護錛屽彲浠ヤ嬌鐢╤elp 鍛戒護錛屽錛歨elp breakpoints錛屾煡鐪嬭緗柇鐐圭殑鎵鏈夊懡浠ゃ備篃<br>鍙互鐩存帴help 鏉ユ煡鐪嬪懡浠ょ殑甯姪銆?<br>gdb涓紝杈撳叆鍛戒護鏃訛紝鍙互涓嶇敤鎵撳叏鍛戒護錛屽彧鐢ㄦ墦鍛戒護鐨勫墠鍑犱釜瀛楃灝卞彲浠ヤ簡錛屽綋鐒訛紝鍛戒護<br>鐨勫墠鍑犱釜瀛楃搴旇瑕佹爣蹇楃潃涓涓敮涓鐨勫懡浠わ紝鍦↙inux涓嬶紝浣犲彲浠ユ暡鍑諱袱嬈AB閿潵琛ラ綈<br>鍛戒護鐨勫叏縐幫紝濡傛灉鏈夐噸澶嶇殑錛岄偅涔坓db浼氭妸鍏朵緥鍑烘潵銆?<br>紺轟緥涓錛氬湪榪涘叆鍑芥暟func鏃訛紝璁劇疆涓涓柇鐐廣傚彲浠ユ暡鍏reak func錛屾垨鏄洿鎺ュ氨鏄痓 func <br>(gdb) b func <br>Breakpoint 1 at 0x8048458: file hello.c, line 10. <br>紺轟緥浜岋細鏁插叆b鎸変袱嬈AB閿紝浣犱細鐪嬪埌鎵鏈塨鎵撳ご鐨勫懡浠わ細 <br>(gdb) b <br>backtrace break bt <br>(gdb) <br>紺轟緥涓夛細鍙寰楀嚱鏁扮殑鍓嶇紑錛屽彲浠ヨ繖鏍鳳細 <br>(gdb) b make_ <鎸塗AB閿?gt; <br>錛堝啀鎸変笅涓嬈AB閿紝浣犱細鐪嬪埌:錛?<br>make_a_section_from_file make_environ <br>make_abs_section make_function_type <br>make_blockvector make_pointer_type </p> <p>make_cleanup make_reference_type <br>make_command make_symbol_completion_list <br>(gdb) b make_ <br>GDB鎶婃墍鏈塵ake寮澶寸殑鍑芥暟鍏ㄩ儴渚嬪嚭鏉ョ粰浣犳煡鐪嬨?<br>紺轟緥鍥涳細璋冭瘯C++鐨勭▼搴忔椂錛屾湁鍙互鍑芥暟鍚嶄竴鏍楓傚錛?<br>(gdb) b 'bubble( M-? <br>bubble(double,double) bubble(int,int) <br>(gdb) b 'bubble( <br>浣犲彲浠ユ煡鐪嬪埌C++涓殑鎵鏈夌殑閲嶈澆鍑芥暟鍙婂弬鏁般傦紙娉細M-?鍜?#8220;鎸変袱嬈AB閿?#8221;鏄竴涓剰鎬濓級 <br>瑕侀鍑篻db鏃訛紝鍙敤鍙憅uit鎴栧懡浠ょ畝縐皅灝辮浜嗐?<br>GDB涓繍琛孶NIX鐨剆hell紼嬪簭 <br>鈥斺斺斺斺斺斺斺斺斺斺斺?<br>鍦╣db鐜涓紝浣犲彲浠ユ墽琛孶NIX鐨剆hell鐨勫懡浠わ紝浣跨敤gdb鐨剆hell鍛戒護鏉ュ畬鎴愶細 <br>shell <br>璋冪敤UNIX鐨剆hell鏉ユ墽琛岋紝鐜鍙橀噺SHELL涓畾涔夌殑UNIX鐨剆hell灝嗕細琚敤鏉ユ墽琛岋紝濡?br>鏋淪HELL娌℃湁瀹氫箟錛岄偅灝變嬌鐢║NIX鐨勬爣鍑唖hell錛?bin/sh銆傦紙鍦╓indows涓嬌鐢–ommand.com<br>鎴朿md.exe錛?<br>榪樻湁涓涓猤db鍛戒護鏄痬ake錛?<br>make <br>鍙互鍦╣db涓墽琛宮ake鍛戒護鏉ラ噸鏂癰uild鑷繁鐨勭▼搴忋傝繖涓懡浠ょ瓑浠蜂簬“shell make ”銆?<br>鍦℅DB涓繍琛岀▼搴?<br>鈥斺斺斺斺斺斺斺?<br>褰撲互gdb 鏂瑰紡鍚姩gdb鍚庯紝gdb浼氬湪PATH璺緞鍜屽綋鍓嶇洰褰曚腑鎼滅儲鐨勬簮鏂囦歡銆傚瑕佺‘璁db<br>鏄惁璇誨埌婧愭枃浠訛紝鍙嬌鐢╨鎴杔ist鍛戒護錛岀湅鐪媑db鏄惁鑳藉垪鍑烘簮浠g爜銆?<br>鍦╣db涓紝榪愯紼嬪簭浣跨敤r鎴栨槸run鍛戒護銆傜▼搴忕殑榪愯錛屼綘鏈夊彲鑳介渶瑕佽緗笅闈㈠洓鏂歸潰鐨勪簨銆?<br>1銆佺▼搴忚繍琛屽弬鏁般?<br>set args 鍙寚瀹氳繍琛屾椂鍙傛暟銆傦紙濡傦細set args 10 20 30 40 50錛?<br>show args 鍛戒護鍙互鏌ョ湅璁劇疆濂界殑榪愯鍙傛暟銆?<br>2銆佽繍琛岀幆澧冦?<br>path <br>鍙瀹氱▼搴忕殑榪愯璺緞銆?<br>show paths 鏌ョ湅紼嬪簭鐨勮繍琛岃礬寰勩?</p> <p>set environment varname [=value] 璁劇疆鐜鍙橀噺銆傚錛歴et env USER=hchen <br>show environment [varname] 鏌ョ湅鐜鍙橀噺銆?<br>3銆佸伐浣滅洰褰曘?<br>cd <br>鐩稿綋浜巗hell鐨刢d鍛戒護銆?<br>pwd 鏄劇ず褰撳墠鐨勬墍鍦ㄧ洰褰曘?<br>4銆佺▼搴忕殑杈撳叆杈撳嚭銆?<br>info terminal 鏄劇ず浣犵▼搴忕敤鍒扮殑緇堢鐨勬ā寮忋?<br>浣跨敤閲嶅畾鍚戞帶鍒剁▼搴忚緭鍑恒傚錛歳un > outfile <br>tty鍛戒護鍙互鎸囧啓杈撳叆杈撳嚭鐨勭粓绔澶囥傚錛歵ty /dev/ttyb <br>璋冭瘯宸茶繍琛岀殑紼嬪簭 <br>鈥斺斺斺斺斺斺斺?<br>涓ょ鏂規硶錛?<br>1銆佸湪UNIX涓嬬敤ps鏌ョ湅姝e湪榪愯鐨勭▼搴忕殑PID錛堣繘紼婭D錛夛紝鐒跺悗鐢╣db PID鏍煎紡鎸傛帴姝e湪<br>榪愯鐨勭▼搴忋?<br>2銆佸厛鐢╣db 鍏寵仈涓婃簮浠g爜錛屽茍榪涜gdb錛屽湪gdb涓敤attach鍛戒護鏉ユ寕鎺ヨ繘紼嬬殑PID銆傚茍鐢?br>detach鏉ュ彇娑堟寕鎺ョ殑榪涚▼銆?<br>鏆傚仠 / 鎭㈠紼嬪簭榪愯 <br>鈥斺斺斺斺斺斺斺斺?<br>璋冭瘯紼嬪簭涓紝鏆傚仠紼嬪簭榪愯鏄繀欏葷殑錛孏DB鍙互鏂逛究鍦版殏鍋滅▼搴忕殑榪愯銆備綘鍙互璁劇疆紼嬪簭<br>鐨勫湪鍝鍋滀綇錛屽湪浠涔堟潯浠朵笅鍋滀綇錛屽湪鏀跺埌浠涔堜俊鍙鋒椂鍋滃線絳夌瓑銆備互渚夸簬浣犳煡鐪嬭繍琛屾椂鐨勫彉<br>閲忥紝浠ュ強榪愯鏃剁殑嫻佺▼銆?<br>褰撹繘紼嬭gdb鍋滀綇鏃訛紝浣犲彲浠ヤ嬌鐢╥nfo program 鏉ユ煡鐪嬬▼搴忕殑鏄惁鍦ㄨ繍琛岋紝榪涚▼鍙鳳紝琚殏鍋?br>鐨勫師鍥犮?<br>鍦╣db涓紝鎴戜滑鍙互鏈変互涓嬪嚑縐嶆殏鍋滄柟寮忥細鏂偣錛圔reakPoint錛夈佽瀵熺偣錛圵atchPoint錛夈佹崟<br>鎹夌偣錛圕atchPoint錛夈佷俊鍙鳳紙Signals錛夈佺嚎紼嬪仠姝紙Thread Stops錛夈傚鏋滆鎭㈠紼嬪簭榪愯錛屽彲<br>浠ヤ嬌鐢╟鎴栨槸continue鍛戒護銆?<br>涓銆佽緗柇鐐癸紙BreakPoint錛?<br>鎴戜滑鐢╞reak鍛戒護鏉ヨ緗柇鐐廣傛闈㈡湁鍑犵偣璁劇疆鏂偣鐨勬柟娉曪細 <br>break <br>鍦ㄨ繘鍏ユ寚瀹氬嚱鏁版椂鍋滀綇銆侰++涓彲浠ヤ嬌鐢╟lass::function鎴杅unction(type,type)鏍煎紡鏉ユ寚瀹氬嚱</p> <p>鏁板悕銆?<br>break <br>鍦ㄦ寚瀹氳鍙峰仠浣忋?<br>break +offset <br>break -offset <br>鍦ㄥ綋鍓嶈鍙風殑鍓嶉潰鎴栧悗闈㈢殑offset琛屽仠浣忋俹ffiset涓鴻嚜鐒舵暟銆?<br>break filename:linenum <br>鍦ㄦ簮鏂囦歡filename鐨刲inenum琛屽鍋滀綇銆?<br>break filename:function <br>鍦ㄦ簮鏂囦歡filename鐨刦unction鍑芥暟鐨勫叆鍙e鍋滀綇銆?<br>break *address <br>鍦ㄧ▼搴忚繍琛岀殑鍐呭瓨鍦板潃澶勫仠浣忋?<br>break <br>break鍛戒護娌℃湁鍙傛暟鏃訛紝琛ㄧず鍦ㄤ笅涓鏉℃寚浠ゅ鍋滀綇銆?<br>break ... if <br>...鍙互鏄笂榪扮殑鍙傛暟錛宑ondition琛ㄧず鏉′歡錛屽湪鏉′歡鎴愮珛鏃跺仠浣忋傛瘮濡傚湪寰幆澧冧綋涓紝鍙互璁?br>緗産reak if i=100錛岃〃紺哄綋i涓?00鏃跺仠浣忕▼搴忋?<br>鏌ョ湅鏂偣鏃訛紝鍙嬌鐢╥nfo鍛戒護錛屽涓嬫墍紺猴細錛堟敞錛歯琛ㄧず鏂偣鍙鳳級 <br>info breakpoints [n] <br>info break [n] <br>浜屻佽緗瀵熺偣錛圵atchPoint錛?<br>瑙傚療鐐逛竴鑸潵瑙傚療鏌愪釜琛ㄨ揪寮忥紙鍙橀噺涔熸槸涓縐嶈〃杈懼紡錛夌殑鍊兼槸鍚︽湁鍙樺寲浜嗭紝濡傛灉鏈夊彉鍖栵紝椹?br>涓婂仠浣忕▼搴忋傛垜浠湁涓嬮潰鐨勫嚑縐嶆柟娉曟潵璁劇疆瑙傚療鐐癸細 <br>watch <br>涓鴻〃杈懼紡錛堝彉閲忥級expr璁劇疆涓涓瀵熺偣銆備竴閲忚〃杈懼紡鍊兼湁鍙樺寲鏃訛紝椹笂鍋滀綇紼嬪簭銆?<br>rwatch <br>褰撹〃杈懼紡錛堝彉閲忥級expr琚鏃訛紝鍋滀綇紼嬪簭銆?<br>awatch <br>褰撹〃杈懼紡錛堝彉閲忥級鐨勫艱璇繪垨琚啓鏃訛紝鍋滀綇紼嬪簭銆?</p> <p>info watchpoints <br>鍒楀嚭褰撳墠鎵璁劇疆浜嗙殑鎵鏈夎瀵熺偣銆?<br>涓夈佽緗崟鎹夌偣錛圕atchPoint錛?<br>浣犲彲璁劇疆鎹曟崏鐐規潵琛ユ崏紼嬪簭榪愯鏃剁殑涓浜涗簨浠躲傚錛氳澆鍏ュ叡浜簱錛堝姩鎬侀摼鎺ュ簱錛夋垨鏄疌++<br>鐨勫紓甯搞傝緗崟鎹夌偣鐨勬牸寮忎負錛?<br>catch <br>褰揺vent鍙戠敓鏃訛紝鍋滀綇紼嬪簭銆俥vent鍙互鏄笅闈㈢殑鍐呭錛?<br>1銆乼hrow 涓涓狢++鎶涘嚭鐨勫紓甯搞傦紙throw涓哄叧閿瓧錛?<br>2銆乧atch 涓涓狢++鎹曟崏鍒扮殑寮傚父銆傦紙catch涓哄叧閿瓧錛?<br>3銆乪xec 璋冪敤緋葷粺璋冪敤exec鏃躲傦紙exec涓哄叧閿瓧錛岀洰鍓嶆鍔熻兘鍙湪HP-UX涓嬫湁鐢級 <br>4銆乫ork 璋冪敤緋葷粺璋冪敤fork鏃躲傦紙fork涓哄叧閿瓧錛岀洰鍓嶆鍔熻兘鍙湪HP-UX涓嬫湁鐢級 <br>5銆乿fork 璋冪敤緋葷粺璋冪敤vfork鏃躲傦紙vfork涓哄叧閿瓧錛岀洰鍓嶆鍔熻兘鍙湪HP-UX涓嬫湁鐢級 <br>6銆乴oad 鎴?load 杞藉叆鍏變韓搴擄紙鍔ㄦ侀摼鎺ュ簱錛夋椂銆傦紙load涓哄叧閿瓧錛岀洰鍓嶆鍔熻兘鍙湪HP-UX<br>涓嬫湁鐢級 <br>7銆乽nload 鎴?unload 鍗歌澆鍏變韓搴擄紙鍔ㄦ侀摼鎺ュ簱錛夋椂銆傦紙unload涓哄叧閿瓧錛岀洰鍓嶆鍔熻兘鍙湪<br>HP-UX涓嬫湁鐢級 <br>tcatch <br>鍙緗竴嬈℃崟鎹夌偣錛屽綋紼嬪簭鍋滀綇浠ュ悗錛屽簲鐐硅鑷姩鍒犻櫎銆?<br>鍥涖佺淮鎶ゅ仠姝㈢偣 <br>涓婇潰璇翠簡濡備綍璁劇疆紼嬪簭鐨勫仠姝㈢偣錛孏DB涓殑鍋滄鐐逛篃灝辨槸涓婅堪鐨勪笁綾匯傚湪GDB涓紝濡傛灉浣?br>瑙夊緱宸插畾涔夊ソ鐨勫仠姝㈢偣娌℃湁鐢ㄤ簡錛屼綘鍙互浣跨敤delete銆乧lear銆乨isable銆乪nable榪欏嚑涓懡浠ゆ潵<br>榪涜緇存姢銆?<br>clear <br>娓呴櫎鎵鏈夌殑宸插畾涔夌殑鍋滄鐐廣?<br>clear <br>clear <br>娓呴櫎鎵鏈夎緗湪鍑芥暟涓婄殑鍋滄鐐廣?<br>clear <br>clear <br>娓呴櫎鎵鏈夎緗湪鎸囧畾琛屼笂鐨勫仠姝㈢偣銆?<br>delete [breakpoints] [range...] <br>鍒犻櫎鎸囧畾鐨勬柇鐐癸紝breakpoints涓烘柇鐐瑰彿銆傚鏋滀笉鎸囧畾鏂偣鍙鳳紝鍒欒〃紺哄垹闄ゆ墍鏈夌殑鏂偣銆俽ange <br>琛ㄧず鏂偣鍙風殑鑼冨洿錛堝錛?-7錛夈傚叾綆鍐欏懡浠や負d銆?</p> <p>姣斿垹闄ゆ洿濂界殑涓縐嶆柟娉曟槸disable鍋滄鐐癸紝disable浜嗙殑鍋滄鐐癸紝GDB涓嶄細鍒犻櫎錛屽綋浣犺繕闇瑕?br>鏃訛紝enable鍗沖彲錛屽氨濂藉儚鍥炴敹绔欎竴鏍楓?<br>disable [breakpoints] [range...] <br>disable鎵鎸囧畾鐨勫仠姝㈢偣錛宐reakpoints涓哄仠姝㈢偣鍙楓傚鏋滀粈涔堥兘涓嶆寚瀹氾紝琛ㄧずdisable鎵鏈夌殑<br>鍋滄鐐廣傜畝鍐欏懡浠ゆ槸dis. <br>enable [breakpoints] [range...] <br>enable鎵鎸囧畾鐨勫仠姝㈢偣錛宐reakpoints涓哄仠姝㈢偣鍙楓?<br>enable [breakpoints] once range... <br>enable鎵鎸囧畾鐨勫仠姝㈢偣涓嬈★紝褰撶▼搴忓仠姝㈠悗錛岃鍋滄鐐歸┈涓婅GDB鑷姩disable銆?<br>enable [breakpoints] delete range... <br>enable鎵鎸囧畾鐨勫仠姝㈢偣涓嬈★紝褰撶▼搴忓仠姝㈠悗錛岃鍋滄鐐歸┈涓婅GDB鑷姩鍒犻櫎銆?<br>浜斻佸仠姝㈡潯浠剁淮鎶?<br>鍓嶉潰鍦ㄨ鍒拌緗柇鐐規椂錛屾垜浠彁鍒拌繃鍙互璁劇疆涓涓潯浠訛紝褰撴潯浠舵垚绔嬫椂錛岀▼搴忚嚜鍔ㄥ仠姝紝榪?br>鏄竴涓潪甯稿己澶х殑鍔熻兘錛岃繖閲岋紝鎴戞兂涓撻棬璇磋榪欎釜鏉′歡鐨勭浉鍏崇淮鎶ゅ懡浠ゃ備竴鑸潵璇達紝涓烘柇鐐?br>璁劇疆涓涓潯浠訛紝鎴戜滑浣跨敤if鍏抽敭璇嶏紝鍚庨潰璺熷叾鏂偣鏉′歡銆傚茍涓旓紝鏉′歡璁劇疆濂藉悗錛屾垜浠彲浠?br>鐢╟ondition鍛戒護鏉ヤ慨鏀規柇鐐圭殑鏉′歡銆傦紙鍙湁break鍜寃atch鍛戒護鏀寔if錛宑atch鐩墠鏆備笉鏀寔<br>if錛?<br>condition <br>淇敼鏂偣鍙蜂負bnum鐨勫仠姝㈡潯浠朵負expression銆?<br>condition <br>娓呴櫎鏂偣鍙蜂負bnum鐨勫仠姝㈡潯浠躲?<br>榪樻湁涓涓瘮杈冪壒孌婄殑緇存姢鍛戒護ignore錛屼綘鍙互鎸囧畾紼嬪簭榪愯鏃訛紝蹇界暐鍋滄鏉′歡鍑犳銆?<br>ignore <br>琛ㄧず蹇界暐鏂偣鍙蜂負bnum鐨勫仠姝㈡潯浠禼ount嬈°?<br>鍏佷負鍋滄鐐硅瀹氳繍琛屽懡浠?<br>鎴戜滑鍙互浣跨敤GDB鎻愪緵鐨刢ommand鍛戒護鏉ヨ緗仠姝㈢偣鐨勮繍琛屽懡浠ゃ備篃灝辨槸璇達紝褰撹繍琛岀殑<br>紼嬪簭鍦ㄨ鍋滄浣忔椂錛屾垜浠彲浠ヨ鍏惰嚜鍔ㄨ繍琛屼竴浜涘埆鐨勫懡浠わ紝榪欏緢鏈夊埄琛岃嚜鍔ㄥ寲璋冭瘯銆傚鍩轟簬<br>GDB鐨勮嚜鍔ㄥ寲璋冭瘯鏄竴涓己澶х殑鏀寔銆?<br>commands [bnum] </p> <p>... command-list ... <br>end <br>涓烘柇鐐瑰彿bnum鎸囧啓涓涓懡浠ゅ垪琛ㄣ傚綋紼嬪簭琚鏂偣鍋滀綇鏃訛紝gdb浼氫緷嬈¤繍琛屽懡浠ゅ垪琛ㄤ腑鐨?br>鍛戒護銆?<br>渚嬪錛?<br>break foo if x>0 <br>commands <br>printf "x is %d\n",x <br>continue <br>end <br>鏂偣璁劇疆鍦ㄥ嚱鏁癴oo涓紝鏂偣鏉′歡鏄痻>0錛屽鏋滅▼搴忚鏂綇鍚庯紝涔熷氨鏄紝涓鏃鐨勫煎湪foo<br>鍑芥暟涓ぇ浜?錛孏DB浼氳嚜鍔ㄦ墦鍗板嚭x鐨勫鹼紝騫剁戶緇繍琛岀▼搴忋?<br>濡傛灉浣犺娓呴櫎鏂偣涓婄殑鍛戒護搴忓垪錛岄偅涔堝彧瑕佺畝鍗曠殑鎵ц涓涓媍ommands鍛戒護錛屽茍鐩存帴鍦ㄦ墦涓?br>end灝辮浜嗐?<br>涓冦佹柇鐐硅彍鍗?<br>鍦–++涓紝鍙兘浼氶噸澶嶅嚭鐜板悓涓涓悕瀛楃殑鍑芥暟鑻ュ共嬈★紙鍑芥暟閲嶈澆錛夛紝鍦ㄨ繖縐嶆儏鍐典笅錛宐reak 涓?br>鑳藉憡璇塆DB瑕佸仠鍦ㄥ摢涓嚱鏁扮殑鍏ュ彛銆傚綋鐒訛紝浣犲彲浠ヤ嬌鐢╞reak 涔熷氨鏄妸鍑芥暟鐨勫弬鏁扮被鍨嬪憡<br>璇塆DB錛屼互鎸囧畾涓涓嚱鏁般傚惁鍒欑殑璇濓紝GDB浼氱粰浣犲垪鍑轟竴涓柇鐐硅彍鍗曚緵浣犻夋嫨浣犳墍闇瑕佺殑<br>鏂偣銆備綘鍙杈撳叆浣犺彍鍗曞垪琛ㄤ腑鐨勭紪鍙峰氨鍙互浜嗐傚錛?<br>(gdb) b String::after <br>[0] cancel <br>[1] all <br>[2] file:String.cc; line number:867 <br>[3] file:String.cc; line number:860 <br>[4] file:String.cc; line number:875 <br>[5] file:String.cc; line number:853 <br>[6] file:String.cc; line number:846 <br>[7] file:String.cc; line number:735 <br>> 2 4 6 <br>Breakpoint 1 at 0xb26c: file String.cc, line 867. <br>Breakpoint 2 at 0xb344: file String.cc, line 875. <br>Breakpoint 3 at 0xafcc: file String.cc, line 846. <br>Multiple breakpoints were set. <br>Use the "delete" command to delete unwanted <br>breakpoints. <br>(gdb) </p> <p>鍙錛孏DB鍒楀嚭浜嗘墍鏈塧fter鐨勯噸杞藉嚱鏁幫紝浣犲彲浠ラ変竴涓嬪垪琛ㄧ紪鍙峰氨琛屼簡銆?琛ㄧず鏀懼純璁劇疆<br>鏂偣錛?琛ㄧず鎵鏈夊嚱鏁伴兘璁劇疆鏂偣銆?<br>鍏佹仮澶嶇▼搴忚繍琛屽拰鍗曟璋冭瘯 <br>褰撶▼搴忚鍋滀綇浜嗭紝浣犲彲浠ョ敤continue鍛戒護鎭㈠紼嬪簭鐨勮繍琛岀洿鍒扮▼搴忕粨鏉燂紝鎴栦笅涓涓柇鐐瑰埌鏉ャ?br>涔熷彲浠ヤ嬌鐢╯tep鎴杗ext鍛戒護鍗曟璺熻釜紼嬪簭銆?<br>continue [ignore-count] <br>c [ignore-count] <br>fg [ignore-count] <br>鎭㈠紼嬪簭榪愯錛岀洿鍒扮▼搴忕粨鏉燂紝鎴栨槸涓嬩竴涓柇鐐瑰埌鏉ャ俰gnore-count琛ㄧず蹇界暐鍏跺悗鐨勬柇鐐規<br>鏁般俢ontinue錛宑錛宖g涓変釜鍛戒護閮芥槸涓鏍風殑鎰忔濄?<br>step <br>鍗曟璺熻釜錛屽鏋滄湁鍑芥暟璋冪敤錛屼粬浼氳繘鍏ヨ鍑芥暟銆傝繘鍏ュ嚱鏁扮殑鍓嶆彁鏄紝姝ゅ嚱鏁拌緙栬瘧鏈塪ebug<br>淇℃伅銆傚緢鍍廣C絳夊伐鍏蜂腑鐨剆tep in銆傚悗闈㈠彲浠ュ姞count涔熷彲浠ヤ笉鍔狅紝涓嶅姞琛ㄧず涓鏉℃潯鍦版墽琛岋紝<br>鍔犺〃紺烘墽琛屽悗闈㈢殑count鏉℃寚浠わ紝鐒跺悗鍐嶅仠浣忋?<br>next <br>鍚屾牱鍗曟璺熻釜錛屽鏋滄湁鍑芥暟璋冪敤錛屼粬涓嶄細榪涘叆璇ュ嚱鏁般傚緢鍍廣C絳夊伐鍏蜂腑鐨剆tep over銆傚悗闈?br>鍙互鍔燾ount涔熷彲浠ヤ笉鍔狅紝涓嶅姞琛ㄧず涓鏉℃潯鍦版墽琛岋紝鍔犺〃紺烘墽琛屽悗闈㈢殑count鏉℃寚浠わ紝鐒跺悗<br>鍐嶅仠浣忋?<br>set step-mode <br>set step-mode on <br>鎵撳紑step-mode妯″紡錛屼簬鏄紝鍦ㄨ繘琛屽崟姝ヨ窡韙椂錛岀▼搴忎笉浼氬洜涓烘病鏈塪ebug淇℃伅鑰屼笉鍋滀綇銆?br>榪欎釜鍙傛暟鏈夊緢鍒╀簬鏌ョ湅鏈哄櫒鐮併?<br>set step-mod off <br>鍏抽棴step-mode妯″紡銆?<br>finish <br>榪愯紼嬪簭錛岀洿鍒板綋鍓嶅嚱鏁板畬鎴愯繑鍥炪傚茍鎵撳嵃鍑芥暟榪斿洖鏃剁殑鍫嗘爤鍦板潃鍜岃繑鍥炲煎強鍙傛暟鍊肩瓑淇℃伅銆?<br>until 鎴?u <br>褰撲綘鍘屽︿簡鍦ㄤ竴涓驚鐜綋鍐呭崟姝ヨ窡韙椂錛岃繖涓懡浠ゅ彲浠ヨ繍琛岀▼搴忕洿鍒伴鍑哄驚鐜綋銆?<br>stepi 鎴?si <br>nexti 鎴?ni <br>鍗曟璺熻釜涓鏉℃満鍣ㄦ寚浠わ紒涓鏉$▼搴忎唬鐮佹湁鍙兘鐢辨暟鏉℃満鍣ㄦ寚浠ゅ畬鎴愶紝stepi鍜宯exti鍙互鍗曟<br>鎵ц鏈哄櫒鎸囦護銆備笌涔嬩竴鏍鋒湁鐩稿悓鍔熻兘鐨勫懡浠ゆ槸“display/i $pc” 錛屽綋榪愯瀹岃繖涓懡浠ゅ悗錛屽崟<br>姝ヨ窡韙細鍦ㄦ墦鍑虹▼搴忎唬鐮佺殑鍚屾椂鎵撳嚭鏈哄櫒鎸囦護錛堜篃灝辨槸姹囩紪浠g爜錛?</p> <p>涔濄佷俊鍙鳳紙Signals錛?<br>淇″彿鏄竴縐嶈蔣涓柇錛屾槸涓縐嶅鐞嗗紓姝ヤ簨浠剁殑鏂規硶銆備竴鑸潵璇達紝鎿嶄綔緋葷粺閮芥敮鎸佽澶氫俊鍙楓傚挨<br>鍏舵槸UNIX錛屾瘮杈冮噸瑕佸簲鐢ㄧ▼搴忎竴鑸兘浼氬鐞嗕俊鍙楓俇NIX瀹氫箟浜嗚澶氫俊鍙鳳紝姣斿SIGINT<br>琛ㄧず涓柇瀛楃淇″彿錛屼篃灝辨槸Ctrl+C鐨勪俊鍙鳳紝SIGBUS琛ㄧず紜歡鏁呴殰鐨勪俊鍙鳳紱SIGCHLD琛ㄧず<br>瀛愯繘紼嬬姸鎬佹敼鍙樹俊鍙鳳紱SIGKILL琛ㄧず緇堟紼嬪簭榪愯鐨勪俊鍙鳳紝絳夌瓑銆備俊鍙烽噺緙栫▼鏄疷NIX涓?br>闈炲父閲嶈鐨勪竴縐嶆妧鏈?<br>GDB鏈夎兘鍔涘湪浣犺皟璇曠▼搴忕殑鏃跺欏鐞嗕換浣曚竴縐嶄俊鍙鳳紝浣犲彲浠ュ憡璇塆DB闇瑕佸鐞嗗摢涓縐嶄俊<br>鍙楓備綘鍙互瑕佹眰GDB鏀跺埌浣犳墍鎸囧畾鐨勪俊鍙鋒椂錛岄┈涓婂仠浣忔鍦ㄨ繍琛岀殑紼嬪簭錛屼互渚涗綘榪涜璋冭瘯銆?br>浣犲彲浠ョ敤GDB鐨刪andle鍛戒護鏉ュ畬鎴愯繖涓鍔熻兘銆?<br>handle <br>鍦℅DB涓畾涔変竴涓俊鍙峰鐞嗐備俊鍙峰彲浠ヤ互SIG寮澶存垨涓嶄互SIG寮澶達紝鍙互鐢ㄥ畾涔変竴涓澶?br>鐞嗕俊鍙風殑鑼冨洿錛堝錛歋IGIO-SIGKILL錛岃〃紺哄鐞嗕粠SIGIO淇″彿鍒癝IGKILL鐨勪俊鍙鳳紝鍏朵腑鍖?br>鎷琒IGIO錛孲IGIOT錛孲IGKILL涓変釜淇″彿錛夛紝涔熷彲浠ヤ嬌鐢ㄥ叧閿瓧all鏉ユ爣鏄庤澶勭悊鎵鏈夌殑淇″彿銆?br>涓鏃﹁璋冭瘯鐨勭▼搴忔帴鏀跺埌淇″彿錛岃繍琛岀▼搴忛┈涓婁細琚獹DB鍋滀綇錛屼互渚涜皟璇曘傚叾鍙互鏄互涓嬪嚑<br>縐嶅叧閿瓧鐨勪竴涓垨澶氫釜銆?<br>nostop <br>褰撹璋冭瘯鐨勭▼搴忔敹鍒頒俊鍙鋒椂錛孏DB涓嶄細鍋滀綇紼嬪簭鐨勮繍琛岋紝浣嗕細鎵撳嚭娑堟伅鍛婅瘔浣犳敹鍒拌繖縐嶄俊<br>鍙楓?<br>stop <br>褰撹璋冭瘯鐨勭▼搴忔敹鍒頒俊鍙鋒椂錛孏DB浼氬仠浣忎綘鐨勭▼搴忋?<br>print <br>褰撹璋冭瘯鐨勭▼搴忔敹鍒頒俊鍙鋒椂錛孏DB浼氭樉紺哄嚭涓鏉′俊鎭?<br>noprint <br>褰撹璋冭瘯鐨勭▼搴忔敹鍒頒俊鍙鋒椂錛孏DB涓嶄細鍛婅瘔浣犳敹鍒頒俊鍙風殑淇℃伅銆?<br>pass <br>noignore <br>褰撹璋冭瘯鐨勭▼搴忔敹鍒頒俊鍙鋒椂錛孏DB涓嶅鐞嗕俊鍙楓傝繖琛ㄧず錛孏DB浼氭妸榪欎釜淇″彿浜ょ粰琚皟璇曠▼<br>搴忎細澶勭悊銆?<br>nopass <br>ignore <br>褰撹璋冭瘯鐨勭▼搴忔敹鍒頒俊鍙鋒椂錛孏DB涓嶄細璁╄璋冭瘯紼嬪簭鏉ュ鐞嗚繖涓俊鍙楓?<br>info signals <br>info handle <br>鏌ョ湅鏈夊摢浜涗俊鍙峰湪琚獹DB媯嫻嬩腑銆?<br>鍗併佺嚎紼嬶紙Thread Stops錛?</p> <p>濡傛灉浣犵▼搴忔槸澶氱嚎紼嬬殑璇濓紝浣犲彲浠ュ畾涔変綘鐨勬柇鐐規槸鍚﹀湪鎵鏈夌殑綰跨▼涓婏紝鎴栨槸鍦ㄦ煇涓壒瀹氱殑綰?br>紼嬨侴DB寰堝鏄撳府浣犲畬鎴愯繖涓宸ヤ綔銆?<br>break thread <br>break thread if ... <br>linespec鎸囧畾浜嗘柇鐐硅緗湪鐨勬簮紼嬪簭鐨勮鍙楓倀hreadno鎸囧畾浜嗙嚎紼嬬殑ID錛屾敞鎰忥紝榪欎釜ID鏄?br>GDB鍒嗛厤鐨勶紝浣犲彲浠ラ氳繃“info threads”鍛戒護鏉ユ煡鐪嬫鍦ㄨ繍琛岀▼搴忎腑鐨勭嚎紼嬩俊鎭傚鏋滀綘<br>涓嶆寚瀹歵hread 鍒欒〃紺轟綘鐨勬柇鐐硅鍦ㄦ墍鏈夌嚎紼嬩笂闈€備綘榪樺彲浠ヤ負鏌愮嚎紼嬫寚瀹氭柇鐐規潯浠躲傚錛?<br>(gdb) break frik.c:13 thread 28 if bartab > lim <br>褰撲綘鐨勭▼搴忚GDB鍋滀綇鏃訛紝鎵鏈夌殑榪愯綰跨▼閮戒細琚仠浣忋傝繖鏂逛究浣犱綘鏌ョ湅榪愯紼嬪簭鐨勬諱綋<br>鎯呭喌銆傝屽湪浣犳仮澶嶇▼搴忚繍琛屾椂錛屾墍鏈夌殑綰跨▼涔熶細琚仮澶嶈繍琛屻傞偅鎬曟槸涓昏繘紼嬪湪琚崟姝ヨ皟璇曟椂銆?<br>鏌ョ湅鏍堜俊鎭?<br>鈥斺斺斺斺?<br>褰撶▼搴忚鍋滀綇浜嗭紝浣犻渶瑕佸仛鐨勭涓浠朵簨灝辨槸鏌ョ湅紼嬪簭鏄湪鍝噷鍋滀綇鐨勩傚綋浣犵殑紼嬪簭璋冪敤浜嗕竴<br>涓嚱鏁幫紝鍑芥暟鐨勫湴鍧錛屽嚱鏁板弬鏁幫紝鍑芥暟鍐呯殑灞閮ㄥ彉閲忛兘浼氳鍘嬪叆“鏍?#8221;錛圫tack錛変腑銆備綘鍙互<br>鐢℅DB鍛戒護鏉ユ煡鐪嬪綋鍓嶇殑鏍堜腑鐨勪俊鎭?<br>涓嬮潰鏄竴浜涙煡鐪嬪嚱鏁拌皟鐢ㄦ爤淇℃伅鐨凣DB鍛戒護錛?<br>backtrace <br>bt <br>鎵撳嵃褰撳墠鐨勫嚱鏁拌皟鐢ㄦ爤鐨勬墍鏈変俊鎭傚錛?<br>(gdb) bt <br>#0 func (n=250) at tst.c:6 <br>#1 0x08048524 in main (argc=1, argv=0xbffff674) at tst.c:30 <br>#2 0x400409ed in __libc_start_main () from /lib/libc.so.6 <br>浠庝笂鍙互鐪嬪嚭鍑芥暟鐨勮皟鐢ㄦ爤淇℃伅錛歘_libc_start_main --> main() --> func() <br>backtrace <br>bt <br>n鏄竴涓鏁存暟錛岃〃紺哄彧鎵撳嵃鏍堥《涓妌灞傜殑鏍堜俊鎭?<br>backtrace <-n> <br>bt <-n> <br>-n琛ㄤ竴涓礋鏁存暟錛岃〃紺哄彧鎵撳嵃鏍堝簳涓媙灞傜殑鏍堜俊鎭?<br>濡傛灉浣犺鏌ョ湅鏌愪竴灞傜殑淇℃伅錛屼綘闇瑕佸湪鍒囨崲褰撳墠鐨勬爤錛屼竴鑸潵璇達紝紼嬪簭鍋滄鏃訛紝鏈欏跺眰鐨勬爤</p> <p>灝辨槸褰撳墠鏍堬紝濡傛灉浣犺鏌ョ湅鏍堜笅闈㈠眰鐨勮緇嗕俊鎭紝棣栧厛瑕佸仛鐨勬槸鍒囨崲褰撳墠鏍堛?<br>frame <br>f <br>n鏄竴涓粠0寮濮嬬殑鏁存暟錛屾槸鏍堜腑鐨勫眰緙栧彿銆傛瘮濡傦細frame 0錛岃〃紺烘爤欏訛紝frame 1錛岃〃紺烘爤鐨?br>絎簩灞傘?<br>up <br>琛ㄧず鍚戞爤鐨勪笂闈㈢Щ鍔╪灞傦紝鍙互涓嶆墦n錛岃〃紺哄悜涓婄Щ鍔ㄤ竴灞傘?<br>down <br>琛ㄧず鍚戞爤鐨勪笅闈㈢Щ鍔╪灞傦紝鍙互涓嶆墦n錛岃〃紺哄悜涓嬬Щ鍔ㄤ竴灞傘?<br>涓婇潰鐨勫懡浠わ紝閮戒細鎵撳嵃鍑虹Щ鍔ㄥ埌鐨勬爤灞傜殑淇℃伅銆傚鏋滀綘涓嶆兂璁╁叾鎵撳嚭淇℃伅銆備綘鍙互浣跨敤榪欎笁<br>涓懡浠わ細 <br>select-frame 瀵瑰簲浜?frame 鍛戒護銆?<br>up-silently 瀵瑰簲浜?up 鍛戒護銆?<br>down-silently 瀵瑰簲浜?down 鍛戒護銆?<br>鏌ョ湅褰撳墠鏍堝眰鐨勪俊鎭紝浣犲彲浠ョ敤浠ヤ笅GDB鍛戒護錛?<br>frame 鎴?f <br>浼氭墦鍗板嚭榪欎簺淇℃伅錛氭爤鐨勫眰緙栧彿錛屽綋鍓嶇殑鍑芥暟鍚嶏紝鍑芥暟鍙傛暟鍊鹼紝鍑芥暟鎵鍦ㄦ枃浠跺強琛屽彿錛屽嚱鏁?br>鎵ц鍒扮殑璇彞銆?<br>info frame <br>info f <br>榪欎釜鍛戒護浼氭墦鍗板嚭鏇翠負璇︾粏鐨勫綋鍓嶆爤灞傜殑淇℃伅錛屽彧涓嶈繃錛屽ぇ澶氭暟閮芥槸榪愯鏃剁殑鍐呭唴鍦板潃銆傛瘮<br>濡傦細鍑芥暟鍦板潃錛岃皟鐢ㄥ嚱鏁扮殑鍦板潃錛岃璋冪敤鍑芥暟鐨勫湴鍧錛岀洰鍓嶇殑鍑芥暟鏄敱浠涔堟牱鐨勭▼搴忚璦鍐?br>鎴愮殑銆佸嚱鏁板弬鏁板湴鍧鍙婂箋佸眬閮ㄥ彉閲忕殑鍦板潃絳夌瓑銆傚錛?<br>(gdb) info f <br>Stack level 0, frame at 0xbffff5d4: <br>eip = 0x804845d in func (tst.c:6); saved eip 0x8048524 <br>called by frame at 0xbffff60c <br>source language c. <br>Arglist at 0xbffff5d4, args: n=250 <br>Locals at 0xbffff5d4, Previous frame's sp is 0x0 <br>Saved registers: <br>ebp at 0xbffff5d4, eip at 0xbffff5d8 <br>info args </p> <p>鎵撳嵃鍑哄綋鍓嶅嚱鏁扮殑鍙傛暟鍚嶅強鍏跺箋?<br>info locals <br>鎵撳嵃鍑哄綋鍓嶅嚱鏁頒腑鎵鏈夊眬閮ㄥ彉閲忓強鍏跺箋?<br>info catch <br>鎵撳嵃鍑哄綋鍓嶇殑鍑芥暟涓殑寮傚父澶勭悊淇℃伅銆?<br>鏌ョ湅婧愮▼搴?<br>鈥斺斺斺斺?<br>涓銆佹樉紺烘簮浠g爜 <br>GDB 鍙互鎵撳嵃鍑烘墍璋冭瘯紼嬪簭鐨勬簮浠g爜錛屽綋鐒訛紝鍦ㄧ▼搴忕紪璇戞椂涓瀹氳鍔犱笂-g鐨勫弬鏁幫紝鎶婃簮紼?br>搴忎俊鎭紪璇戝埌鎵ц鏂囦歡涓備笉鐒跺氨鐪嬩笉鍒版簮紼嬪簭浜嗐傚綋紼嬪簭鍋滀笅鏉ヤ互鍚庯紝GDB浼氭姤鍛婄▼搴?br>鍋滃湪浜嗛偅涓枃浠剁殑絎嚑琛屼笂銆備綘鍙互鐢╨ist鍛戒護鏉ユ墦鍗扮▼搴忕殑婧愪唬鐮併傝繕鏄潵鐪嬩竴鐪嬫煡鐪嬫簮<br>浠g爜鐨凣DB鍛戒護鍚с?<br>list <br>鏄劇ず紼嬪簭絎琹inenum琛岀殑鍛ㄥ洿鐨勬簮紼嬪簭銆?<br>list <br>鏄劇ず鍑芥暟鍚嶄負function鐨勫嚱鏁扮殑婧愮▼搴忋?<br>list <br>鏄劇ず褰撳墠琛屽悗闈㈢殑婧愮▼搴忋?<br>list - <br>鏄劇ず褰撳墠琛屽墠闈㈢殑婧愮▼搴忋?<br>涓鑸槸鎵撳嵃褰撳墠琛岀殑涓?琛屽拰涓?琛岋紝濡傛灉鏄劇ず鍑芥暟鏄槸涓?琛屼笅8琛岋紝榛樿鏄?0琛岋紝褰?br>鐒訛紝浣犱篃鍙互瀹氬埗鏄劇ず鐨勮寖鍥達紝浣跨敤涓嬮潰鍛戒護鍙互璁劇疆涓嬈℃樉紺烘簮紼嬪簭鐨勮鏁般?<br>set listsize <br>璁劇疆涓嬈℃樉紺烘簮浠g爜鐨勮鏁般?<br>show listsize <br>鏌ョ湅褰撳墠listsize鐨勮緗?<br>list鍛戒護榪樻湁涓嬮潰鐨勭敤娉曪細 <br>list , </p> <p>鏄劇ず浠巉irst琛屽埌last琛屼箣闂寸殑婧愪唬鐮併?<br>list , <br>鏄劇ず浠庡綋鍓嶈鍒發ast琛屼箣闂寸殑婧愪唬鐮併?<br>list + <br>寰鍚庢樉紺烘簮浠g爜銆?<br>涓鑸潵璇村湪list鍚庨潰鍙互璺熶互涓嬭繖浠殑鍙傛暟錛?<br>琛屽彿銆?<br><+offset> 褰撳墠琛屽彿鐨勬鍋忕Щ閲忋?<br><-offset> 褰撳墠琛屽彿鐨勮礋鍋忕Щ閲忋?<br>鍝釜鏂囦歡鐨勫摢涓琛屻?<br>鍑芥暟鍚嶃?<br>鍝釜鏂囦歡涓殑鍝釜鍑芥暟銆?<br><*address> 紼嬪簭榪愯鏃剁殑璇彞鍦ㄥ唴瀛樹腑鐨勫湴鍧銆?<br>浜屻佹悳绱㈡簮浠g爜 <br>涓嶄粎濡傛錛孏DB榪樻彁渚涗簡婧愪唬鐮佹悳绱㈢殑鍛戒護錛?<br>forward-search <br>search <br>鍚戝墠闈㈡悳绱€?<br>reverse-search <br>鍏ㄩ儴鎼滅儲銆?<br>鍏朵腑錛屽氨鏄鍒欒〃杈懼紡錛屼篃涓諱竴涓瓧絎︿覆鐨勫尮閰嶆ā寮忥紝鍏充簬姝e垯琛ㄨ揪寮忥紝鎴戝氨涓嶅湪榪欓噷璁蹭簡錛?br>榪樿鍚勪綅鏌ョ湅鐩稿叧璧勬枡銆?<br>涓夈佹寚瀹氭簮鏂囦歡鐨勮礬寰?<br>鏌愪簺鏃跺欙紝鐢?g緙栬瘧榪囧悗鐨勬墽琛岀▼搴忎腑鍙槸鍖呮嫭浜嗘簮鏂囦歡鐨勫悕瀛楋紝娌℃湁璺緞鍚嶃侴DB鎻愪緵<br>浜嗗彲浠ヨ浣犳寚瀹氭簮鏂囦歡鐨勮礬寰勭殑鍛戒護錛屼互渚縂DB榪涜鎼滅儲銆?<br>directory <br>dir <br>鍔犱竴涓簮鏂囦歡璺緞鍒板綋鍓嶈礬寰勭殑鍓嶉潰銆傚鏋滀綘瑕佹寚瀹氬涓礬寰勶紝UNIX涓嬩綘鍙互浣跨敤“:”錛?br>Windows涓嬩綘鍙互浣跨敤“;”銆?</p> <p>directory <br>娓呴櫎鎵鏈夌殑鑷畾涔夌殑婧愭枃浠舵悳绱㈣礬寰勪俊鎭?<br>show directories <br>鏄劇ず瀹氫箟浜嗙殑婧愭枃浠舵悳绱㈣礬寰勩?<br>鍥涖佹簮浠g爜鐨勫唴瀛?<br>浣犲彲浠ヤ嬌鐢╥nfo line鍛戒護鏉ユ煡鐪嬫簮浠g爜鍦ㄥ唴瀛樹腑鐨勫湴鍧銆俰nfo line鍚庨潰鍙互璺?#8220;琛屽彿”錛?#8220;鍑?br>鏁板悕”錛?#8220;鏂囦歡鍚?琛屽彿”錛?#8220;鏂囦歡鍚?鍑芥暟鍚?#8221;錛岃繖涓懡浠や細鎵撳嵃鍑烘墍鎸囧畾鐨勬簮鐮佸湪榪愯鏃剁殑鍐?br>瀛樺湴鍧錛屽錛?<br>(gdb) info line tst.c:func <br>Line 5 of "tst.c" starts at address 0x8048456 and ends at 0x804845d . <br>榪樻湁涓涓懡浠わ紙disassemble錛変綘鍙互鏌ョ湅婧愮▼搴忕殑褰撳墠鎵ц鏃剁殑鏈哄櫒鐮侊紝榪欎釜鍛戒護浼氭妸鐩墠<br>鍐呭瓨涓殑鎸囦護dump鍑烘潵銆傚涓嬮潰鐨勭ず渚嬭〃紺烘煡鐪嬪嚱鏁癴unc鐨勬眹緙栦唬鐮併?<br>(gdb) disassemble func <br>Dump of assembler code for function func: <br>0x8048450 : push %ebp <br>0x8048451 : mov %esp,%ebp <br>0x8048453 : sub $0x18,%esp <br>0x8048456 : movl $0x0,0xfffffffc(%ebp) <br>0x804845d : movl $0x1,0xfffffff8(%ebp) <br>0x8048464 : mov 0xfffffff8(%ebp),%eax <br>0x8048467 : cmp 0x8(%ebp),%eax <br>0x804846a : jle 0x8048470 <br>0x804846c : jmp 0x8048480 <br>0x804846e : mov %esi,%esi <br>0x8048470 : mov 0xfffffff8(%ebp),%eax <br>0x8048473 : add %eax,0xfffffffc(%ebp) <br>0x8048476 : incl 0xfffffff8(%ebp) <br>0x8048479 : jmp 0x8048464 <br>0x804847b : nop <br>0x804847c : lea 0x0(%esi,1),%esi <br>0x8048480 : mov 0xfffffffc(%ebp),%edx <br>0x8048483 : mov %edx,%eax <br>0x8048485 : jmp 0x8048487 <br>0x8048487 : mov %ebp,%esp <br>0x8048489 : pop %ebp <br>0x804848a : ret <br>End of assembler dump. </p> <p>鏌ョ湅榪愯鏃舵暟鎹?<br>鈥斺斺斺斺斺斺?<br>鍦ㄤ綘璋冭瘯紼嬪簭鏃訛紝褰撶▼搴忚鍋滀綇鏃訛紝浣犲彲浠ヤ嬌鐢╬rint鍛戒護錛堢畝鍐欏懡浠や負p錛夛紝鎴栨槸鍚屼箟鍛戒護<br>inspect鏉ユ煡鐪嬪綋鍓嶇▼搴忕殑榪愯鏁版嵁銆俻rint鍛戒護鐨勬牸寮忔槸錛?<br>print <br>print / <br>鏄〃杈懼紡錛屾槸浣犳墍璋冭瘯鐨勭▼搴忕殑璇█鐨勮〃杈懼紡錛圙DB鍙互璋冭瘯澶氱緙栫▼璇█錛夛紝鏄緭鍑虹殑鏍?br>寮忥紝姣斿錛屽鏋滆鎶婅〃杈懼紡鎸?6榪涘埗鐨勬牸寮忚緭鍑猴紝閭d箞灝辨槸/x銆?<br>涓銆佽〃杈懼紡 <br>print鍜岃澶欸DB鐨勫懡浠や竴鏍鳳紝鍙互鎺ュ彈涓涓〃杈懼紡錛孏DB浼氭牴鎹綋鍓嶇殑紼嬪簭榪愯鐨勬暟鎹?br>鏉ヨ綆楄繖涓〃杈懼紡錛屾棦鐒舵槸琛ㄨ揪寮忥紝閭d箞灝卞彲浠ユ槸褰撳墠紼嬪簭榪愯涓殑const甯擱噺銆佸彉閲忋佸嚱<br>鏁扮瓑鍐呭銆傚彲鎯滅殑鏄疓DB涓嶈兘浣跨敤浣犲湪紼嬪簭涓墍瀹氫箟鐨勫畯銆?<br>琛ㄨ揪寮忕殑璇硶搴旇鏄綋鍓嶆墍璋冭瘯鐨勮璦鐨勮娉曪紝鐢變簬C/C++鏄竴縐嶅ぇ浼楀瀷鐨勮璦錛屾墍浠ワ紝鏈?br>鏂囦腑鐨勪緥瀛愰兘鏄叧浜嶤/C++鐨勩傦紙鑰屽叧浜庣敤GDB璋冭瘯鍏跺畠璇█鐨勭珷鑺傦紝鎴戝皢鍦ㄥ悗闈粙緇嶏級 <br>鍦ㄨ〃杈懼紡涓紝鏈夊嚑縐岹DB鎵鏀寔鐨勬搷浣滅錛屽畠浠彲浠ョ敤鍦ㄤ換浣曚竴縐嶈璦涓?<br>@ <br>鏄竴涓拰鏁扮粍鏈夊叧鐨勬搷浣滅錛屽湪鍚庨潰浼氭湁鏇磋緇嗙殑璇存槑銆?<br>:: <br>鎸囧畾涓涓湪鏂囦歡鎴栨槸涓涓嚱鏁頒腑鐨勫彉閲忋?<br>{} <br>琛ㄧず涓涓寚鍚戝唴瀛樺湴鍧鐨勭被鍨嬩負type鐨勪竴涓璞°?<br>浜屻佺▼搴忓彉閲?<br>鍦℅DB涓紝浣犲彲浠ラ殢鏃舵煡鐪嬩互涓嬩笁縐嶅彉閲忕殑鍊鹼細 <br>1銆佸叏灞鍙橀噺錛堟墍鏈夋枃浠跺彲瑙佺殑錛?<br>2銆侀潤鎬佸叏灞鍙橀噺錛堝綋鍓嶆枃浠跺彲瑙佺殑錛?<br>3銆佸眬閮ㄥ彉閲忥紙褰撳墠Scope鍙鐨勶級 <br>濡傛灉浣犵殑灞閮ㄥ彉閲忓拰鍏ㄥ眬鍙橀噺鍙戠敓鍐茬獊錛堜篃灝辨槸閲嶅悕錛夛紝涓鑸儏鍐典笅鏄眬閮ㄥ彉閲忎細闅愯棌鍏ㄥ眬<br>鍙橀噺錛屼篃灝辨槸璇達紝濡傛灉涓涓叏灞鍙橀噺鍜屼竴涓嚱鏁頒腑鐨勫眬閮ㄥ彉閲忓悓鍚嶆椂錛屽鏋滃綋鍓嶅仠姝㈢偣鍦ㄥ嚱</p> <p>鏁頒腑錛岀敤print鏄劇ず鍑虹殑鍙橀噺鐨勫間細鏄嚱鏁頒腑鐨勫眬閮ㄥ彉閲忕殑鍊箋傚鏋滄鏃朵綘鎯蟲煡鐪嬪叏灞鍙橀噺<br>鐨勫兼椂錛屼綘鍙互浣跨敤“::”鎿嶄綔絎︼細 <br>file::variable <br>function::variable <br>鍙互閫氳繃榪欑褰㈠紡鎸囧畾浣犳墍鎯蟲煡鐪嬬殑鍙橀噺錛屾槸鍝釜鏂囦歡涓殑鎴栨槸鍝釜鍑芥暟涓殑銆備緥濡傦紝鏌ョ湅<br>鏂囦歡f2.c涓殑鍏ㄥ眬鍙橀噺x鐨勫鹼細 <br>gdb) p 'f2.c'::x <br>褰撶劧錛?#8220;::”鎿嶄綔絎︿細鍜孋++涓殑鍙戠敓鍐茬獊錛孏DB鑳借嚜鍔ㄨ瘑鍒?#8220;::” 鏄惁C++鐨勬搷浣滅錛屾墍<br>浠ヤ綘涓嶅繀鎷呭績鍦ㄨ皟璇旵++紼嬪簭鏃朵細鍑虹幇寮傚父銆?<br>鍙﹀錛岄渶瑕佹敞鎰忕殑鏄紝濡傛灉浣犵殑紼嬪簭緙栬瘧鏃跺紑鍚簡浼樺寲閫夐」錛岄偅涔堝湪鐢℅DB璋冭瘯琚紭鍖栬繃<br>鐨勭▼搴忔椂錛屽彲鑳戒細鍙戠敓鏌愪簺鍙橀噺涓嶈兘璁塊棶錛屾垨鏄彇鍊奸敊璇爜鐨勬儏鍐點傝繖涓槸寰堟甯哥殑錛屽洜涓?br>浼樺寲紼嬪簭浼氬垹鏀逛綘鐨勭▼搴忥紝鏁寸悊浣犵▼搴忕殑璇彞欏哄簭錛屽墧闄や竴浜涙棤鎰忎箟鐨勫彉閲忕瓑錛屾墍浠ュ湪GDB<br>璋冭瘯榪欑紼嬪簭鏃訛紝榪愯鏃剁殑鎸囦護鍜屼綘鎵緙栧啓鎸囦護灝辨湁涓嶄竴鏍鳳紝涔熷氨浼氬嚭鐜頒綘鎵鎯寵薄涓嶅埌鐨勭粨<br>鏋溿傚浠樿繖縐嶆儏鍐墊椂錛岄渶瑕佸湪緙栬瘧紼嬪簭鏃跺叧闂紪璇戜紭鍖栥備竴鑸潵璇達紝鍑犱箮鎵鏈夌殑緙栬瘧鍣ㄩ兘鏀?br>鎸佺紪璇戜紭鍖栫殑寮鍏籌紝渚嬪錛孏NU鐨凜/C++緙栬瘧鍣℅CC錛屼綘鍙互浣跨敤“-gstabs”閫夐」鏉ヨВ鍐?br>榪欎釜闂銆傚叧浜庣紪璇戝櫒鐨勫弬鏁幫紝榪樿鏌ョ湅緙栬瘧鍣ㄧ殑浣跨敤璇存槑鏂囨。銆?<br>涓夈佹暟緇?<br>鏈夋椂鍊欙紝浣犻渶瑕佹煡鐪嬩竴孌佃繛緇殑鍐呭瓨絀洪棿鐨勫箋傛瘮濡傛暟緇勭殑涓孌碉紝鎴栨槸鍔ㄦ佸垎閰嶇殑鏁版嵁鐨勫ぇ<br>灝忋備綘鍙互浣跨敤GDB鐨?#8220;@”鎿嶄綔絎︼紝“@”鐨勫乏杈規槸絎竴涓唴瀛樼殑鍦板潃鐨勫鹼紝“@”鐨勫彸<br>杈瑰垯浣犱綘鎯蟲煡鐪嬪唴瀛樼殑闀垮害銆備緥濡傦紝浣犵殑紼嬪簭涓湁榪欐牱鐨勮鍙ワ細 <br>int *array = (int *) malloc (len * sizeof (int)); <br>浜庢槸錛屽湪GDB璋冭瘯榪囩▼涓紝浣犲彲浠ヤ互濡備笅鍛戒護鏄劇ず鍑鴻繖涓姩鎬佹暟緇勭殑鍙栧鹼細 <br>p <a href="mailto:*array@len"><font color=#336699>*array@len</font></a> <br>@鐨勫乏杈規槸鏁扮粍鐨勯鍦板潃鐨勫鹼紝涔熷氨鏄彉閲廰rray鎵鎸囧悜鐨勫唴瀹癸紝鍙寵竟鍒欐槸鏁版嵁鐨勯暱搴︼紝鍏?br>淇濆瓨鍦ㄥ彉閲弆en涓紝鍏惰緭鍑虹粨鏋滐紝澶х害鏄笅闈㈣繖涓牱瀛愮殑錛?<br>(gdb) p <a href="mailto:*array@len"><font color=#336699>*array@len</font></a> <br>$1 = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40} <br>濡傛灉鏄潤鎬佹暟緇勭殑璇濓紝鍙互鐩存帴鐢╬rint鏁扮粍鍚嶏紝灝卞彲浠ユ樉紺烘暟緇勪腑鎵鏈夋暟鎹殑鍐呭浜嗐?<br>鍥涖佽緭鍑烘牸寮?</p> <p>涓鑸潵璇達紝GDB浼氭牴鎹彉閲忕殑綾誨瀷杈撳嚭鍙橀噺鐨勫箋備絾浣犱篃鍙互鑷畾涔塆DB鐨勮緭鍑虹殑鏍煎紡銆?br>渚嬪錛屼綘鎯寵緭鍑轟竴涓暣鏁扮殑鍗佸叚榪涘埗錛屾垨鏄簩榪涘埗鏉ユ煡鐪嬭繖涓暣鍨嬪彉閲忕殑涓殑浣嶇殑鎯呭喌銆傝<br>鍋氬埌榪欐牱錛屼綘鍙互浣跨敤GDB鐨勬暟鎹樉紺烘牸寮忥細 <br>x 鎸夊崄鍏繘鍒舵牸寮忔樉紺哄彉閲忋?<br>d 鎸夊崄榪涘埗鏍煎紡鏄劇ず鍙橀噺銆?<br>u 鎸夊崄鍏繘鍒舵牸寮忔樉紺烘棤絎﹀彿鏁村瀷銆?<br>o 鎸夊叓榪涘埗鏍煎紡鏄劇ず鍙橀噺銆?<br>t 鎸変簩榪涘埗鏍煎紡鏄劇ず鍙橀噺銆?<br>a 鎸夊崄鍏繘鍒舵牸寮忔樉紺哄彉閲忋?<br>c 鎸夊瓧絎︽牸寮忔樉紺哄彉閲忋?<br>f 鎸夋誕鐐規暟鏍煎紡鏄劇ず鍙橀噺銆?<br>(gdb) p i <br>$21 = 101 <br>(gdb) p/a i <br>$22 = 0x65 <br>(gdb) p/c i <br>$23 = 101 'e' <br>(gdb) p/f i <br>$24 = 1.41531145e-43 <br>(gdb) p/x i <br>$25 = 0x65 <br>(gdb) p/t i <br>$26 = 1100101 <br>浜斻佹煡鐪嬪唴瀛?<br>浣犲彲浠ヤ嬌鐢╡xamine鍛戒護錛堢畝鍐欐槸x錛夋潵鏌ョ湅鍐呭瓨鍦板潃涓殑鍊箋倄鍛戒護鐨勮娉曞涓嬫墍紺猴細 <br>x/ <br>n銆乫銆乽鏄彲閫夌殑鍙傛暟銆?<br>n 鏄竴涓鏁存暟錛岃〃紺烘樉紺哄唴瀛樼殑闀垮害錛屼篃灝辨槸璇翠粠褰撳墠鍦板潃鍚戝悗鏄劇ず鍑犱釜鍦板潃鐨勫唴瀹廣?<br>f 琛ㄧず鏄劇ず鐨勬牸寮忥紝鍙傝涓婇潰銆傚鏋滃湴鍧鎵鎸囩殑鏄瓧絎︿覆錛岄偅涔堟牸寮忓彲浠ユ槸s錛屽鏋滃湴鍗佹槸<br>鎸囦護鍦板潃錛岄偅涔堟牸寮忓彲浠ユ槸i銆?</p> <p>u 琛ㄧず浠庡綋鍓嶅湴鍧寰鍚庤姹傜殑瀛楄妭鏁幫紝濡傛灉涓嶆寚瀹氱殑璇濓紝GDB榛樿鏄?涓猙ytes銆倁鍙傛暟鍙?br>浠ョ敤涓嬮潰鐨勫瓧絎︽潵浠f浛錛宐琛ㄧず鍗曞瓧鑺傦紝h琛ㄧず鍙屽瓧鑺傦紝w琛ㄧず鍥涘瓧鑺傦紝g琛ㄧず鍏瓧鑺傘傚綋<br>鎴戜滑鎸囧畾浜嗗瓧鑺傞暱搴﹀悗錛孏DB浼氫粠鎸囧唴瀛樺畾鐨勫唴瀛樺湴鍧寮濮嬶紝璇誨啓鎸囧畾瀛楄妭錛屽茍鎶婂叾褰撲綔<br>涓涓煎彇鍑烘潵銆?<br>琛ㄧず涓涓唴瀛樺湴鍧銆?<br>n/f/u涓変釜鍙傛暟鍙互涓璧蜂嬌鐢ㄣ備緥濡傦細 <br>鍛戒護錛歺/3uh 0x54320 琛ㄧず錛屼粠鍐呭瓨鍦板潃0x54320璇誨彇鍐呭錛宧琛ㄧず浠ュ弻瀛楄妭涓轟竴涓崟浣嶏紝3<br>琛ㄧず涓変釜鍗曚綅錛寀琛ㄧず鎸夊崄鍏繘鍒舵樉紺恒?<br>鍏佽嚜鍔ㄦ樉紺?<br>浣犲彲浠ヨ緗竴浜涜嚜鍔ㄦ樉紺虹殑鍙橀噺錛屽綋紼嬪簭鍋滀綇鏃訛紝鎴栨槸鍦ㄤ綘鍗曟璺熻釜鏃訛紝榪欎簺鍙橀噺浼氳嚜鍔ㄦ樉<br>紺恒傜浉鍏崇殑GDB鍛戒護鏄痙isplay銆?<br>display <br>display/ <br>display/ <br>expr鏄竴涓〃杈懼紡錛宖mt琛ㄧず鏄劇ず鐨勬牸寮忥紝addr琛ㄧず鍐呭瓨鍦板潃錛屽綋浣犵敤display璁懼畾濂戒簡涓<br>涓垨澶氫釜琛ㄨ揪寮忓悗錛屽彧瑕佷綘鐨勭▼搴忚鍋滀笅鏉ワ紝GDB浼氳嚜鍔ㄦ樉紺轟綘鎵璁劇疆鐨勮繖浜涜〃杈懼紡鐨勫箋?<br>鏍煎紡i鍜宻鍚屾牱琚玠isplay鏀寔錛屼竴涓潪甯告湁鐢ㄧ殑鍛戒護鏄細 <br>display/i $pc <br>$pc鏄疓DB鐨勭幆澧冨彉閲忥紝琛ㄧず鐫鎸囦護鐨勫湴鍧錛?i鍒欒〃紺鴻緭鍑烘牸寮忎負鏈哄櫒鎸囦護鐮侊紝涔熷氨鏄眹<br>緙栥備簬鏄綋紼嬪簭鍋滀笅鍚庯紝灝變細鍑虹幇婧愪唬鐮佸拰鏈哄櫒鎸囦護鐮佺浉瀵瑰簲鐨勬儏褰紝榪欐槸涓涓緢鏈夋剰鎬濈殑<br>鍔熻兘銆?<br>涓嬮潰鏄竴浜涘拰display鐩稿叧鐨凣DB鍛戒護錛?<br>undisplay <br>delete display <br>鍒犻櫎鑷姩鏄劇ず錛宒nums鎰忎負鎵璁劇疆濂戒簡鐨勮嚜鍔ㄦ樉寮忕殑緙栧彿銆傚鏋滆鍚屾椂鍒犻櫎鍑犱釜錛岀紪鍙峰彲浠?br>鐢ㄧ┖鏍煎垎闅旓紝濡傛灉瑕佸垹闄や竴涓寖鍥村唴鐨勭紪鍙鳳紝鍙互鐢ㄥ噺鍙瘋〃紺猴紙濡傦細2-5錛?<br>disable display <br>enable display <br>disable鍜宔nalbe涓嶅垹闄よ嚜鍔ㄦ樉紺虹殑璁劇疆錛岃屽彧鏄鍏跺け鏁堝拰鎭㈠銆?</p> <p>info display <br>鏌ョ湅display璁劇疆鐨勮嚜鍔ㄦ樉紺虹殑淇℃伅銆侴DB浼氭墦鍑轟竴寮犺〃鏍鹼紝鍚戜綘鎶ュ憡褰撶劧璋冭瘯涓緗簡澶?br>灝戜釜鑷姩鏄劇ず璁劇疆錛屽叾涓寘鎷紝璁劇疆鐨勭紪鍙鳳紝琛ㄨ揪寮忥紝鏄惁enable銆?<br>涓冦佽緗樉紺洪夐」 <br>GDB涓叧浜庢樉紺虹殑閫夐」姣旇緝澶氾紝榪欓噷鎴戝彧渚嬩婦澶у鏁板父鐢ㄧ殑閫夐」銆?<br>set print address <br>set print address on <br>鎵撳紑鍦板潃杈撳嚭錛屽綋紼嬪簭鏄劇ず鍑芥暟淇℃伅鏃訛紝GDB浼氭樉鍑哄嚱鏁扮殑鍙傛暟鍦板潃銆傜郴緇熼粯璁や負鎵撳紑鐨勶紝<br>濡傦細 <br>(gdb) f <br>#0 set_quotes (lq=0x34c78 "<<", rq=0x34c88 ">>") <br>at input.c:530 <br>530 if (lquote != def_lquote) <br>set print address off <br>鍏抽棴鍑芥暟鐨勫弬鏁板湴鍧鏄劇ず錛屽錛?<br>(gdb) set print addr off <br>(gdb) f <br>#0 set_quotes (lq="<<", rq=">>") at input.c:530 <br>530 if (lquote != def_lquote) <br>show print address <br>鏌ョ湅褰撳墠鍦板潃鏄劇ず閫夐」鏄惁鎵撳紑銆?<br>set print array <br>set print array on <br>鎵撳紑鏁扮粍鏄劇ず錛屾墦寮鍚庡綋鏁扮粍鏄劇ず鏃訛紝姣忎釜鍏冪礌鍗犱竴琛岋紝濡傛灉涓嶆墦寮鐨勮瘽錛屾瘡涓厓绱犲垯浠ラ?br>鍙峰垎闅斻傝繖涓夐」榛樿鏄叧闂殑銆備笌涔嬬浉鍏崇殑涓や釜鍛戒護濡備笅錛屾垜灝變笉鍐嶅璇翠簡銆?<br>set print array off <br>show print array <br>set print elements <br>榪欎釜閫夐」涓昏鏄緗暟緇勭殑錛屽鏋滀綘鐨勬暟緇勫お澶т簡錛岄偅涔堝氨鍙互鎸囧畾涓涓潵鎸囧畾鏁版嵁鏄劇ず鐨?br>鏈澶ч暱搴︼紝褰撳埌杈捐繖涓暱搴︽椂錛孏DB灝變笉鍐嶅線涓嬫樉紺轟簡銆傚鏋滆緗負0錛屽垯琛ㄧず涓嶉檺鍒躲?<br>show print elements </p> <p>鏌ョ湅print elements鐨勯夐」淇℃伅銆?<br>set print null-stop <br>濡傛灉鎵撳紑浜嗚繖涓夐」錛岄偅涔堝綋鏄劇ず瀛楃涓叉椂錛岄亣鍒扮粨鏉熺鍒欏仠姝㈡樉紺恒傝繖涓夐」榛樿涓簅ff銆?<br>set print pretty on <br>濡傛灉鎵撳紑printf pretty榪欎釜閫夐」錛岄偅涔堝綋GDB鏄劇ず緇撴瀯浣撴椂浼氭瘮杈冩紓浜傚錛?<br>$1 = { <br>next = 0x0, <br>flags = { <br>sweet = 1, <br>sour = 1 <br>}, <br>meat = 0x54 "Pork" <br>} <br>set print pretty off <br>鍏抽棴printf pretty榪欎釜閫夐」錛孏DB鏄劇ず緇撴瀯浣撴椂浼氬涓嬫樉紺猴細 <br>$1 = {next = 0x0, flags = {sweet = 1, sour = 1}, meat = 0x54 "Pork"} <br>show print pretty <br>鏌ョ湅GDB鏄浣曟樉紺虹粨鏋勪綋鐨勩?<br>set print sevenbit-strings <br>璁劇疆瀛楃鏄劇ず錛屾槸鍚︽寜“\nnn”鐨勬牸寮忔樉紺猴紝濡傛灉鎵撳紑錛屽垯瀛楃涓叉垨瀛楃鏁版嵁鎸塡nnn鏄劇ず錛?br>濡?#8220;\065”銆?<br>show print sevenbit-strings <br>鏌ョ湅瀛楃鏄劇ず寮鍏蟲槸鍚︽墦寮銆?<br>set print union <br>璁劇疆鏄劇ず緇撴瀯浣撴椂錛屾槸鍚︽樉寮忓叾鍐呯殑鑱斿悎浣撴暟鎹備緥濡傛湁浠ヤ笅鏁版嵁緇撴瀯錛?<br>typedef enum {Tree, Bug} Species; <br>typedef enum {Big_tree, Acorn, Seedling} Tree_forms; <br>typedef enum {Caterpillar, Cocoon, Butterfly} <br>Bug_forms; <br>struct thing { <br>Species it; <br>union { </p> <p>Tree_forms tree; <br>Bug_forms bug; <br>} form; <br>}; <br>struct thing foo = {Tree, {Acorn}}; <br>褰撴墦寮榪欎釜寮鍏蟲椂錛屾墽琛?p foo 鍛戒護鍚庯紝浼氬涓嬫樉紺猴細 <br>$1 = {it = Tree, form = {tree = Acorn, bug = Cocoon}} <br>褰撳叧闂繖涓紑鍏蟲椂錛屾墽琛?p foo 鍛戒護鍚庯紝浼氬涓嬫樉紺猴細 <br>$1 = {it = Tree, form = {...}} <br>show print union <br>鏌ョ湅鑱斿悎浣撴暟鎹殑鏄劇ず鏂瑰紡 <br>set print object <br>鍦–++涓紝濡傛灉涓涓璞℃寚閽堟寚鍚戝叾媧劇敓綾伙紝濡傛灉鎵撳紑榪欎釜閫夐」錛孏DB浼氳嚜鍔ㄦ寜鐓ц櫄鏂規硶<br>璋冪敤鐨勮鍒欐樉紺鴻緭鍑猴紝濡傛灉鍏抽棴榪欎釜閫夐」鐨勮瘽錛孏DB灝變笉綆¤櫄鍑芥暟琛ㄤ簡銆傝繖涓夐」榛樿鏄?br>off銆?<br>show print object <br>鏌ョ湅瀵硅薄閫夐」鐨勮緗?<br>set print static-members <br>榪欎釜閫夐」琛ㄧず錛屽綋鏄劇ず涓涓狢++瀵硅薄涓殑鍐呭鏄紝鏄惁鏄劇ず鍏朵腑鐨勯潤鎬佹暟鎹垚鍛樸傞粯璁ゆ槸<br>on銆?<br>show print static-members <br>鏌ョ湅闈欐佹暟鎹垚鍛橀夐」璁劇疆銆?<br>set print vtbl <br>褰撴閫夐」鎵撳紑鏃訛紝GDB灝嗙敤姣旇緝瑙勬暣鐨勬牸寮忔潵鏄劇ず铏氬嚱鏁拌〃鏃躲傚叾榛樿鏄叧闂殑銆?<br>show print vtbl <br>鏌ョ湅铏氬嚱鏁版樉紺烘牸寮忕殑閫夐」銆?<br>鍏佸巻鍙茶褰?<br>褰撲綘鐢℅DB鐨刾rint鏌ョ湅紼嬪簭榪愯鏃剁殑鏁版嵁鏃訛紝浣犳瘡涓涓猵rint閮戒細琚獹DB璁板綍涓嬫潵銆侴DB<br>浼氫互$1, $2, $3 .....榪欐牱鐨勬柟寮忎負浣犳瘡涓涓猵rint鍛戒護緙栦笂鍙楓備簬鏄紝浣犲彲浠ヤ嬌鐢ㄨ繖涓紪鍙瘋闂?br>浠ュ墠鐨勮〃杈懼紡錛屽$1銆傝繖涓姛鑳芥墍甯︽潵鐨勫ソ澶勬槸錛屽鏋滀綘鍏堝墠杈撳叆浜嗕竴涓瘮杈冮暱鐨勮〃杈懼紡錛?br>濡傛灉浣犺繕鎯蟲煡鐪嬭繖涓〃杈懼紡鐨勫鹼紝浣犲彲浠ヤ嬌鐢ㄥ巻鍙茶褰曟潵璁塊棶錛岀渷鍘諱簡閲嶅杈撳叆銆?</p> <p>涔濄丟DB鐜鍙橀噺 <br>浣犲彲浠ュ湪GDB鐨勮皟璇曠幆澧冧腑瀹氫箟鑷繁鐨勫彉閲忥紝鐢ㄦ潵淇濆瓨涓浜涜皟璇曠▼搴忎腑鐨勮繍琛屾暟鎹傝瀹?br>涔変竴涓狦DB鐨勫彉閲忓緢綆鍗曞彧闇銆備嬌鐢℅DB鐨剆et鍛戒護銆侴DB鐨勭幆澧冨彉閲忓拰UNIX涓鏍鳳紝<br>涔熸槸浠?璧峰ご銆傚錛?<br>set $foo = *object_ptr <br>浣跨敤鐜鍙橀噺鏃訛紝GDB浼氬湪浣犵涓嬈′嬌鐢ㄦ椂鍒涘緩榪欎釜鍙橀噺錛岃屽湪浠ュ悗鐨勪嬌鐢ㄤ腑錛屽垯鐩存帴瀵?br>鍏惰腸鍊箋傜幆澧冨彉閲忔病鏈夌被鍨嬶紝浣犲彲浠ョ粰鐜鍙橀噺瀹氫箟浠諱竴鐨勭被鍨嬨傚寘鎷粨鏋勪綋鍜屾暟緇勩?<br>show convenience <br>璇ュ懡浠ゆ煡鐪嬪綋鍓嶆墍璁劇疆鐨勬墍鏈夌殑鐜鍙橀噺銆?<br>榪欐槸涓涓瘮杈冨己澶х殑鍔熻兘錛岀幆澧冨彉閲忓拰紼嬪簭鍙橀噺鐨勪氦浜掍嬌鐢紝灝嗕嬌寰楃▼搴忚皟璇曟洿涓虹伒媧諱究鎹楓?br>渚嬪錛?<br>set $i = 0 <br>print bar[$i++]->contents <br>浜庢槸錛屽綋浣犲氨涓嶅繀錛宲rint bar[0]->contents, print bar[1]->contents鍦拌緭鍏ュ懡浠や簡銆傝緭鍏ヨ繖鏍風殑<br>鍛戒護鍚庯紝鍙敤鏁插洖杞︼紝閲嶅鎵ц涓婁竴鏉¤鍙ワ紝鐜鍙橀噺浼氳嚜鍔ㄧ瘡鍔狅紝浠庤屽畬鎴愰愪釜杈撳嚭鐨勫姛<br>鑳姐?<br>鍗併佹煡鐪嬪瘎瀛樺櫒 <br>瑕佹煡鐪嬪瘎瀛樺櫒鐨勫鹼紝寰堢畝鍗曪紝鍙互浣跨敤濡備笅鍛戒護錛?<br>info registers <br>鏌ョ湅瀵勫瓨鍣ㄧ殑鎯呭喌銆傦紙闄や簡嫻偣瀵勫瓨鍣級 <br>info all-registers <br>鏌ョ湅鎵鏈夊瘎瀛樺櫒鐨勬儏鍐點傦紙鍖呮嫭嫻偣瀵勫瓨鍣級 <br>info registers <br>鏌ョ湅鎵鎸囧畾鐨勫瘎瀛樺櫒鐨勬儏鍐點?<br>瀵勫瓨鍣ㄤ腑鏀劇疆浜嗙▼搴忚繍琛屾椂鐨勬暟鎹紝姣斿紼嬪簭褰撳墠榪愯鐨勬寚浠ゅ湴鍧錛坕p錛夛紝紼嬪簭鐨勫綋鍓嶅爢鏍?br>鍦板潃錛坰p錛夌瓑絳夈備綘鍚屾牱鍙互浣跨敤print鍛戒護鏉ヨ闂瘎瀛樺櫒鐨勬儏鍐碉紝鍙渶瑕佸湪瀵勫瓨鍣ㄥ悕瀛楀墠<br>鍔犱竴涓?絎﹀彿灝卞彲浠ヤ簡銆傚錛歱 $eip銆?</p> <p>鏀瑰彉紼嬪簭鐨勬墽琛?<br>鈥斺斺斺斺斺斺?<br>涓鏃︿嬌鐢℅DB鎸備笂琚皟璇曠▼搴忥紝褰撶▼搴忚繍琛岃搗鏉ュ悗錛屼綘鍙互鏍規嵁鑷繁鐨勮皟璇曟濊礬鏉ュ姩鎬佸湴<br>鍦℅DB涓洿鏀瑰綋鍓嶈璋冭瘯紼嬪簭鐨勮繍琛岀嚎璺垨鏄叾鍙橀噺鐨勫鹼紝榪欎釜寮哄ぇ鐨勫姛鑳借兘澶熻浣犳洿濂?br>鐨勮皟璇曚綘鐨勭▼搴忥紝姣斿錛屼綘鍙互鍦ㄧ▼搴忕殑涓嬈¤繍琛屼腑璧伴亶紼嬪簭鐨勬墍鏈夊垎鏀?<br>涓銆佷慨鏀瑰彉閲忓?<br>淇敼琚皟璇曠▼搴忚繍琛屾椂鐨勫彉閲忓鹼紝鍦℅DB涓緢瀹規槗瀹炵幇錛屼嬌鐢℅DB鐨刾rint鍛戒護鍗沖彲瀹屾垚銆?br>濡傦細 <br>(gdb) print x=4 <br>x=4榪欎釜琛ㄨ揪寮忔槸C/C++鐨勮娉曪紝鎰忎負鎶婂彉閲弜鐨勫間慨鏀逛負4錛屽鏋滀綘褰撳墠璋冭瘯鐨勮璦鏄?br>Pascal錛岄偅涔堜綘鍙互浣跨敤Pascal鐨勮娉曪細x:=4銆?<br>鍦ㄦ煇浜涙椂鍊欙紝寰堟湁鍙兘浣犵殑鍙橀噺鍜孏DB涓殑鍙傛暟鍐茬獊錛屽錛?<br>(gdb) whatis width <br>type = double <br>(gdb) p width <br>$4 = 13 <br>(gdb) set width=47 <br>Invalid syntax in expression. <br>鍥犱負錛宻et width鏄疓DB鐨勫懡浠わ紝鎵浠ワ紝鍑虹幇浜?#8220;Invalid syntax in expression”鐨勮緗敊璇紝<br>姝ゆ椂錛屼綘鍙互浣跨敤set var鍛戒護鏉ュ憡璇塆DB錛寃idth涓嶆槸浣燝DB鐨勫弬鏁幫紝鑰屾槸紼嬪簭鐨勫彉閲忓悕錛?br>濡傦細 <br>(gdb) set var width=47 <br>鍙﹀錛岃繕鍙兘鏈変簺鎯呭喌錛孏DB騫朵笉鎶ュ憡榪欑閿欒錛屾墍浠ヤ繚闄╄搗瑙侊紝鍦ㄤ綘鏀瑰彉紼嬪簭鍙橀噺鍙栧?br>鏃訛紝鏈濂介兘浣跨敤set var鏍煎紡鐨凣DB鍛戒護銆?<br>浜屻佽煩杞墽琛?<br>涓鑸潵璇達紝琚皟璇曠▼搴忎細鎸夌収紼嬪簭浠g爜鐨勮繍琛岄『搴忎緷嬈℃墽琛屻侴DB鎻愪緵浜嗕貢搴忔墽琛岀殑鍔熻兘錛?br>涔熷氨鏄錛孏DB鍙互淇敼紼嬪簭鐨勬墽琛岄『搴忥紝鍙互璁╃▼搴忔墽琛岄殢鎰忚煩璺冦傝繖涓姛鑳藉彲浠ョ敱GDB<br>鐨刯ump鍛戒護鏉ュ畬錛?<br>jump </p> <p>鎸囧畾涓嬩竴鏉¤鍙ョ殑榪愯鐐廣傚彲浠ユ槸鏂囦歡鐨勮鍙鳳紝鍙互鏄痜ile:line鏍煎紡錛屽彲浠ユ槸+num榪欑鍋?br>縐婚噺鏍煎紡銆傝〃寮忕潃涓嬩竴鏉¤繍琛岃鍙ヤ粠鍝噷寮濮嬨?<br>jump <br>榪欓噷鐨?<br>鏄唬鐮佽鐨勫唴瀛樺湴鍧銆?<br>娉ㄦ剰錛宩ump鍛戒護涓嶄細鏀瑰彉褰撳墠鐨勭▼搴忔爤涓殑鍐呭錛屾墍浠ワ紝褰撲綘浠庝竴涓嚱鏁拌煩鍒板彟涓涓嚱鏁?br>鏃訛紝褰撳嚱鏁拌繍琛屽畬榪斿洖鏃惰繘琛屽脊鏍堟搷浣滄椂蹇呯劧浼氬彂鐢熼敊璇紝鍙兘緇撴灉榪樻槸闈炲父濂囨殑錛岀敋鑷?br>浜庝駭鐢熺▼搴廋ore Dump銆傛墍浠ユ渶濂芥槸鍚屼竴涓嚱鏁頒腑榪涜璺寵漿銆?<br>鐔熸倝姹囩紪鐨勪漢閮界煡閬擄紝紼嬪簭榪愯鏃訛紝鏈変竴涓瘎瀛樺櫒鐢ㄤ簬淇濆瓨褰撳墠浠g爜鎵鍦ㄧ殑鍐呭瓨鍦板潃銆傛墍浠ワ紝<br>jump鍛戒護涔熷氨鏄敼鍙樹簡榪欎釜瀵勫瓨鍣ㄤ腑鐨勫箋備簬鏄紝浣犲彲浠ヤ嬌鐢?#8220;set $pc”鏉ユ洿鏀硅煩杞墽琛?br>鐨勫湴鍧銆傚錛?<br>set $pc = 0x485 <br>涓夈佷駭鐢熶俊鍙烽噺 <br>浣跨敤singal鍛戒護錛屽彲浠ヤ駭鐢熶竴涓俊鍙烽噺緇欒璋冭瘯鐨勭▼搴忋傚錛氫腑鏂俊鍙稢trl+C銆傝繖闈炲父鏂逛究<br>浜庣▼搴忕殑璋冭瘯錛屽彲浠ュ湪紼嬪簭榪愯鐨勪換鎰忎綅緗緗柇鐐癸紝騫跺湪璇ユ柇鐐圭敤GDB浜х敓涓涓俊鍙烽噺錛?br>榪欑綺劇‘鍦板湪鏌愬浜х敓淇″彿闈炲父鏈夊埄紼嬪簭鐨勮皟璇曘?<br>璇硶鏄細signal 錛孶NIX鐨勭郴緇熶俊鍙烽噺閫氬父浠?鍒?5銆傛墍浠ュ彇鍊間篃鍦ㄨ繖涓寖鍥淬?<br>single鍛戒護鍜宻hell鐨刱ill鍛戒護涓嶅悓錛岀郴緇熺殑kill鍛戒護鍙戜俊鍙風粰琚皟璇曠▼搴忔椂錛屾槸鐢盙DB鎴?br>鑾風殑錛岃宻ingle鍛戒護鎵鍙戝嚭涓淇″彿鍒欐槸鐩存帴鍙戠粰琚皟璇曠▼搴忕殑銆?<br>鍥涖佸己鍒跺嚱鏁拌繑鍥?<br>濡傛灉浣犵殑璋冭瘯鏂偣鍦ㄦ煇涓嚱鏁頒腑錛屽茍榪樻湁璇彞娌℃湁鎵ц瀹屻備綘鍙互浣跨敤return鍛戒護寮哄埗鍑芥暟<br>蹇界暐榪樻病鏈夋墽琛岀殑璇彞騫惰繑鍥炪?<br>return <br>return <br>浣跨敤return鍛戒護鍙栨秷褰撳墠鍑芥暟鐨勬墽琛岋紝騫剁珛鍗寵繑鍥烇紝濡傛灉鎸囧畾浜嗭紝閭d箞璇ヨ〃杈懼紡鐨勫間細琚<br>浣滃嚱鏁扮殑榪斿洖鍊箋?<br>浜斻佸己鍒惰皟鐢ㄥ嚱鏁?</p> <p>call <br>琛ㄨ揪寮忎腑鍙互涓鏄嚱鏁幫紝浠ユ杈懼埌寮哄埗璋冪敤鍑芥暟鐨勭洰鐨勩傚茍鏄劇ず鍑芥暟鐨勮繑鍥炲鹼紝濡傛灉鍑芥暟榪?br>鍥炲兼槸void錛岄偅涔堝氨涓嶆樉紺恒?<br>鍙︿竴涓浉浼肩殑鍛戒護涔熷彲浠ュ畬鎴愯繖涓鍔熻兘鈥斺攑rint錛宲rint鍚庨潰鍙互璺熻〃杈懼紡錛屾墍浠ヤ篃鍙互鐢ㄤ粬<br>鏉ヨ皟鐢ㄥ嚱鏁幫紝print鍜宑all鐨勪笉鍚屾槸錛屽鏋滃嚱鏁拌繑鍥瀡oid錛宑all鍒欎笉鏄劇ず錛宲rint鍒欐樉紺哄嚱鏁拌繑<br>鍥炲鹼紝騫舵妸璇ュ煎瓨鍏ュ巻鍙叉暟鎹腑銆?<br>鍦ㄤ笉鍚岃璦涓嬌鐢℅DB <br>鈥斺斺斺斺斺斺斺斺斺?<br>GDB鏀寔涓嬪垪璇█錛欳, C++, Fortran, PASCAL, Java, Chill, assembly, 鍜?Modula-2銆備竴鑸<br>鏉ワ紝GDB浼氭牴鎹綘鎵璋冭瘯鐨勭▼搴忔潵紜畾褰撶劧鐨勮皟璇曡璦錛屾瘮濡傦細鍙戠幇鏂囦歡鍚嶅悗緙涓?#8220;.c”<br>鐨勶紝GDB浼氳涓烘槸C紼嬪簭銆傛枃浠跺悕鍚庣紑涓?#8220;.C, .cc, .cp, .cpp, .cxx, .c++”鐨勶紝GDB浼氳涓烘槸<br>C++紼嬪簭銆傝屽悗緙鏄?#8220;.f, .F”鐨勶紝GDB浼氳涓烘槸Fortran紼嬪簭錛岃繕鏈夛紝鍚庣紑涓哄鏋滄槸“.s, .S”<br>鐨勪細璁や負鏄眹緙栬璦銆?<br>涔熷氨鏄錛孏DB浼氭牴鎹綘鎵璋冭瘯鐨勭▼搴忕殑璇█錛屾潵璁劇疆鑷繁鐨勮璦鐜錛屽茍璁〨DB鐨勫懡浠?br>璺熺潃璇█鐜鐨勬敼鍙樿屾敼鍙樸傛瘮濡備竴浜汫DB鍛戒護闇瑕佺敤鍒拌〃杈懼紡鎴栧彉閲忔椂錛岃繖浜涜〃杈懼紡鎴?br>鍙橀噺鐨勮娉曪紝瀹屽叏鏄牴鎹綋鍓嶇殑璇█鐜鑰屾敼鍙樼殑銆備緥濡侰/C++涓鎸囬拡鐨勮娉曟槸*p錛岃屽湪<br>Modula-2涓垯鏄痯^銆傚茍涓旓紝濡傛灉浣犲綋鍓嶇殑紼嬪簭鏄敱鍑犵涓嶅悓璇█涓鍚岀紪璇戞垚鐨勶紝閭e埌鍦ㄨ皟<br>璇曡繃紼嬩腑錛孏DB涔熻兘鏍規嵁涓嶅悓鐨勮璦鑷姩鍦板垏鎹㈣璦鐜銆傝繖縐嶈窡鐫璇█鐜鑰屾敼鍙樼殑鍔?br>鑳斤紝鐪熸槸浣撹創寮鍙戜漢鍛樼殑涓縐嶈璁°?<br>涓嬮潰鏄嚑涓浉鍏充簬GDB璇█鐜鐨勫懡浠わ細 <br>show language <br>鏌ョ湅褰撳墠鐨勮璦鐜銆傚鏋淕DB涓嶈兘璇嗕負浣犳墍璋冭瘯鐨勭紪紼嬭璦錛岄偅涔堬紝C璇█琚涓烘槸榛?br>璁ょ殑鐜銆?<br>info frame <br>鏌ョ湅褰撳墠鍑芥暟鐨勭▼搴忚璦銆?<br>info source <br>鏌ョ湅褰撳墠鏂囦歡鐨勭▼搴忚璦銆?<br>濡傛灉GDB娌℃湁媯嫻嬪嚭褰撳墠鐨勭▼搴忚璦錛岄偅涔堜綘涔熷彲浠ユ墜鍔ㄨ緗綋鍓嶇殑紼嬪簭璇█銆備嬌鐢╯et <br>language鍛戒護鍗沖彲鍋氬埌銆?<br>褰搒et language鍛戒護鍚庝粈涔堜篃涓嶈窡鐨勮瘽錛屼綘鍙互鏌ョ湅GDB鎵鏀寔鐨勮璦縐嶇被錛?</p> <p>(gdb) set language <br>The currently understood settings are: <br>local or auto Automatic setting based on source file <br>c Use the C language <br>c++ Use the C++ language <br>asm Use the Asm language <br>chill Use the Chill language <br>fortran Use the Fortran language <br>java Use the Java language <br>modula-2 Use the Modula-2 language <br>pascal Use the Pascal language <br>scheme Use the Scheme language <br>浜庢槸浣犲彲浠ュ湪set language鍚庤窡涓婅鍒楀嚭鏉ョ殑紼嬪簭璇█鍚嶏紝鏉ヨ緗綋鍓嶇殑璇█鐜銆?<br>鍚庤 <br>鈥斺?<br>GDB鏄竴涓己澶х殑鍛戒護琛岃皟璇曞伐鍏楓傚ぇ瀹剁煡閬撳懡浠よ鐨勫己澶у氨鏄湪浜庯紝鍏跺彲浠ュ艦鎴愭墽琛屽簭<br>鍒楋紝褰㈡垚鑴氭湰銆俇NIX涓嬬殑杞歡鍏ㄦ槸鍛戒護琛岀殑錛岃繖緇欑▼搴忓紑鍙戞彁浠d緵浜嗘瀬澶х殑渚垮埄錛屽懡浠よ<br>杞歡鐨勪紭鍔垮湪浜庯紝瀹冧滑鍙互闈炲父瀹規槗鐨勯泦鎴愬湪涓璧鳳紝浣跨敤鍑犱釜綆鍗曠殑宸叉湁宸ュ叿鐨勫懡浠わ紝灝卞彲<br>浠ュ仛鍑轟竴涓潪甯稿己澶х殑鍔熻兘銆?<br>浜庢槸UNIX涓嬬殑杞歡姣擶indows涓嬬殑杞歡鏇磋兘鏈夋満鍦扮粨鍚堬紝鍚勮嚜鍙戞尌鍚勮嚜鐨勯暱澶勶紝緇勫悎鎴?br>鏇翠負寮哄姴鐨勫姛鑳姐傝學indows涓嬬殑鍥懼艦杞歡鍩烘湰涓婃槸鍚勮嚜涓鴻惀錛屼簰鐩鎬笉鑳借皟鐢紝寰堜笉鍒╀簬<br>鍚勭杞歡鐨勭浉浜掗泦鎴愩傚湪榪欓噷騫朵笉鏄鍜學indows鍋氫釜浠涔堟瘮杈冿紝鎵璋?#8220;瀵告湁鎵闀匡紝灝烘湁<br>鎵鐭?#8221;錛屽浘褰㈠寲宸ュ叿榪樻槸鏈変笉濡傚懡浠よ鐨勫湴鏂廣傦紙鐪嬪埌榪欏彞璇濇椂錛屽笇鏈涘悇浣嶅崈涓囧啀涔熶笉瑕佽涓?br>鎴戝氨鏄?#8220;閯欒鍥懼艦鐣岄潰”錛屽拰鎴戞姮鏉犱簡 錛?<br>鎴戞槸鏍規嵁鐗堟湰涓?.1.1鐨凣DB鎵鍐欑殑榪欑瘒鏂囩珷錛屾墍浠ュ彲鑳芥湁浜涘姛鑳藉凡琚慨鏀癸紝鎴栨槸鍙堟湁鏇?br>涓哄己鍔茬殑鍔熻兘銆傝屼笖錛屾垜鍐欏緱闈炲父浠撲績錛屽啓寰楁瘮杈冪畝鐣ワ紝騫朵笖錛屽叾涓垜宸茬粡鐪嬪埌鏈夎澶氶敊鍒?br>瀛椾簡錛堟垜鐢ㄤ簲絎旓紝鎵浠ラ敊瀛楄浣犵湅涓嶆噦錛夛紝鎵浠ワ紝鎴戝湪榪欓噷瀵規垜鏂囦腑鐨勫樊閿欒〃紺轟竾鍒嗙殑姝夋剰銆?<br>鏂囦腑鎵緗楀垪鐨凣DB鐨勫姛鑳芥椂錛屾垜鍙槸緗楀垪浜嗕竴浜涘甫鐢ㄧ殑GDB鐨勫懡浠ゅ拰浣跨敤鏂規硶錛屽叾瀹烇紝<br>鎴戣繖閲屽彧璁茶堪鐨勫姛鑳藉ぇ綰﹀彧鍗燝DB鎵鏈夊姛鑳界殑60%鍚э紝璇︾粏鐨勬枃妗o紝榪樻槸璇鋒煡鐪婫DB鐨?br>甯姪鍜屼嬌鐢ㄦ墜鍐屽惂錛屾垨璁革紝榪囨鏃墮棿錛屽鏋滄垜鏈夌┖錛屾垜鍐嶅啓涓綃嘒DB鐨勯珮綰т嬌鐢ㄣ?<br>鎴戜釜浜洪潪甯稿枩嬈DB鐨勮嚜鍔ㄨ皟璇曠殑鍔熻兘錛岃繖涓姛鑳界湡鐨勫緢寮哄ぇ錛岃瘯鎯籌紝鎴戝湪UNIX涓嬪啓涓?br>鑴氭湰錛岃鑴氭湰鑷姩緙栬瘧鎴戠殑紼嬪簭錛岃鑷姩璋冭瘯錛屽茍鎶婄粨鏋滄姤鍛婂嚭鏉ワ紝璋冭瘯鎴愬姛錛岃嚜鍔╟heckin<br>婧愮爜搴撱備竴涓懡浠わ紝緙栬瘧甯︾潃璋冭瘯甯︾潃checkin錛屽鐖藉晩銆傚彧鏄疓DB瀵硅嚜鍔ㄥ寲璋冭瘯鐩墠鏀寔<br>榪樹笉鏄緢鎴愮啛錛屽彧鑳藉疄鐜板崐鑷姩鍖栵紝鐪熷績鏈熸湜鐫GDB鐨勮嚜鍔ㄥ寲璋冭瘯鍔熻兘鐨勬垚鐔熴?</p> <p>濡傛灉鍚勪綅瀵笹DB鎴栨槸鍒殑鎶鏈棶棰樻湁鍏磋叮鐨勮瘽錛屾榪庡拰鎴戣璁轟氦嫻併傛湰浜虹洰鍓嶄富瑕佸湪UNIX<br>涓嬪仛浜у搧杞歡鐨勫紑鍙戯紝鎵浠ワ紝瀵筓NIX涓嬬殑杞歡寮鍙戞瘮杈冪啛鎮夛紝褰撶劧錛屼笉鍗曞崟鏄妧鏈紝瀵硅蔣<br>浠跺伐紼嬪疄鏂斤紝杞歡璁捐錛岀郴緇熷垎鏋愶紝欏圭洰綆$悊鎴戜篃鐣ユ湁蹇冨緱銆傛榪庡ぇ瀹舵壘鎴戜氦嫻侊紝錛圦Q鏄細<br>753640錛孧SN鏄細<a href="mailto:haoel@hotmail.com"><font color=#336699>haoel@hotmail.com</font></a>錛?<br>RelatedEntries錛?<br>鏂囦歡鎿嶄綔 - 10 28, 2003 <br>OSW:12.CVS璁劇疆涓庡簲鐢?- 10 28, 2003 <br>MySQL AB Acquires Alzato - 10 24, 2003 <br>cvs - 10 24, 2003 <br>浣跨敤CVS榪涜鐗堟湰綆$悊 - 10 23, 2003</p> <img src ="http://m.shnenglu.com/true/aggbug/71749.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2009-01-11 20:21 <a href="http://m.shnenglu.com/true/archive/2009/01/11/71749.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>VC6涓病鏈塿snprintf鍑芥暟http://m.shnenglu.com/true/archive/2008/10/07/63369.htmltruetrueTue, 07 Oct 2008 02:17:00 GMThttp://m.shnenglu.com/true/archive/2008/10/07/63369.htmlhttp://m.shnenglu.com/true/comments/63369.htmlhttp://m.shnenglu.com/true/archive/2008/10/07/63369.html#Feedback2http://m.shnenglu.com/true/comments/commentRss/63369.htmlhttp://m.shnenglu.com/true/services/trackbacks/63369.html鍍忎笅闈㈢殑濂界敤宸ュ叿鍑芥暟灝辨棤娉曚嬌鐢細
string format_string(const char *fmt, ...)
{
 /* Guess we need no more than 512 bytes. */
 int n, size = 512;
 char *p;
 va_list ap;
 if ((p = (char*)malloc (size)) == NULL)
  return "";
 while (1)
 {
  /* Try to print in the allocated space. */
  va_start(ap, fmt);
  n = vsnprintf (p, size, fmt, ap);
  va_end(ap);
  /* If that worked, return the string. */
  if (n > -1 && n < size)
  {
   string str(p);
   if(p)
    free(p);
   return str;
  }
  /* Else try again with more space. */
  if (n > -1)    /* glibc 2.1 */
   size = n+1; /* precisely what is needed */
  else           /* glibc 2.0 */
   size *= 2;  /* twice the old size */
  if ((p = (char*)realloc (p, size)) == NULL)
  {
   if(p)
    free(p);
   return "";
  }
 }
}  



true 2008-10-07 10:17 鍙戣〃璇勮
]]>
std::queue鐨刦ront鐨勯棶棰?/title><link>http://m.shnenglu.com/true/archive/2008/06/10/52731.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Tue, 10 Jun 2008 03:39:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2008/06/10/52731.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/52731.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2008/06/10/52731.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/52731.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/52731.html</trackback:ping><description><![CDATA[<p> </p> msdn涓婄殑瑙f瀽錛?br> <pre><strong>value_type& front( );</strong>  <strong>const value_type& front( ) const;</strong></pre> <p>Returns a reference to the first element at the front of the queue.<br><br>璇風湅涓嬮潰紺轟緥浠g爜<br>queue<int> intqueue;<br>intqueue.push(1);<br>intqueue.push(2);<br>int head = intqueue.front();//int&鍙互闅愬紡杞崲涓篿nt?<br>intqueue.pop();//灝嗗澶村厓绱犲脊鍑洪槦鍒?br>cout << head << endl;//杈撳嚭1錛宖ront搴旇榪斿洖鐨勬槸"寮曠敤",浣唒op涔嬪悗錛屼負浠涔坔ead鐨勮緭鍑鴻繕鏈夋晥(寮曠敤榪樻湁鏁堬紵)錛?br><br></p> <img src ="http://m.shnenglu.com/true/aggbug/52731.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2008-06-10 11:39 <a href="http://m.shnenglu.com/true/archive/2008/06/10/52731.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>娌℃湁鎵懼埌MSVCR80D.dll[杞琞http://m.shnenglu.com/true/archive/2007/11/17/36779.htmltruetrueFri, 16 Nov 2007 17:37:00 GMThttp://m.shnenglu.com/true/archive/2007/11/17/36779.htmlhttp://m.shnenglu.com/true/comments/36779.htmlhttp://m.shnenglu.com/true/archive/2007/11/17/36779.html#Feedback0http://m.shnenglu.com/true/comments/commentRss/36779.htmlhttp://m.shnenglu.com/true/services/trackbacks/36779.htmlSolution to “MSVCR80D.dll not found” by hua.
“娌℃湁鎵懼埌MSVCR80D.dll錛屽洜姝よ繖涓簲鐢ㄧ▼搴忔湭鑳藉惎鍔ㄣ傞噸鏂板畨瑁呭簲鐢ㄧ▼搴忓彲鑳戒細淇姝ら棶棰樸?#8221;鐨勫畬緹庤В鍐蟲柟妗坁_^鎰熻鍋跺仛鐨勮繕涓嶉敊

闂鎵鍦細鐢變簬vs.net 2005 閲囩敤浜嗕竴縐嶆柊鐨凞LL鏂規錛屾悶鎴愪竴涓猠xe榪樿閰嶆湁涓涓猰anifest鏂囦歡錛堜竴鑸湪宓屽叆鏂囦歡閲屼簡錛屾墍浠ョ湅涓嶅埌錛屼笉榪囦篃鍙互涓嶅祵鍏ワ紝榪欐牱浼氱敓浜т竴涓?lt;紼嬪簭鍚?gt;.exe.manifest鐨勬枃浠訛紝娌″畠exe鑷繁灝辮漿涓嶄簡浜嗭細錛夎繖鏄釜鏂板姛鑳斤紝寰蔣寮勪簡涓柊宸ュ叿錛坢t.exe錛夛紝緇撴灉涓嶅ソ鐢紝濂藉儚鏄痜at32涓嬫椂闂存埑鏈夐棶棰橈紙鍦╪tfs涓嬭繖涓棶棰樺氨娌℃湁浜嗭級錛屾悶寰梞anifest鏈夋椂宓屽叆涓嶅埌exe涓紙榛樿閰嶇疆鏄祵鍏ョ殑錛屾墍浠ュ氨鎶ラ敊鎵句笉鍒癲ll浜嗐?br>
瑙e喅鏂規錛?涓兘鍙互錛岀敱浠ョ3涓渶甯咃紝鎴戝仛鐨勶細錛夛細
1錛?nbsp;   寰蔣瀵逛簬榪欎釜闂搴旇涔熸湁澶勭悊錛屼笉榪囨劅瑙変笉鏄緢浜烘у寲銆傚湪“灞炴?>閰嶇疆灞炴?>娓呭崟宸ュ叿->甯歌“涓嬫湁涓涓?#8221;浣跨敤FAT32瑙e喅鍔炴硶錛屾妸瀹冮夋垚鏄紝灝卞彲浠ヤ簡銆傦紙娉ㄦ剰錛氫竴瀹氳鍏堥厤緗繖涓夐」錛岀劧鍚庡啀緙栬瘧宸ョ▼錛岃涓嶇劧榪樻槸涓嶅ソ鐢細錛?br>2錛?nbsp;   鎵懼埌浣犵殑宸ョ▼鐨勬枃浠跺す錛屽錛坢yproject錛夛紝鎵懼埌鍏朵笅鐨刴yproject\myproject\Debug\ myproject.rec錛屾妸瀹冨垹鎺夛紙鍒犳帀鏁翠釜Debug鐩綍涔熷彲浠ワ級錛岄噸鏂扮紪璇戯紝鎼炲畾錛?br>3錛?nbsp;   鏈В鍐蟲柟妗堟槸淇虹嫭鍒涚殑錛屾劅瑙夌埥澶氫簡錛屽彲浠ョ洿鎺ュ啀搴旂敤鍚戝涓厤緗紝涓ラ噸絎﹀悎楂樼駭浜烘満鐣岄潰瑕佹眰錛氾級濂斤紝
1錛?nbsp;   棣栧厛鎵懼埌浣犵殑vs.net瀹夎鐩綍錛堝鎴戠殑鏄疎:\Program Files\Microsoft Visual Studio 8錛夛紝瀹氫綅鍒癕icrosoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application鏂囦歡澶癸紝澶囦喚榪欎釜Application鏂囦歡澶癸紝涓嶇劧涓浼氫綘鑷繁鏀瑰拏浜嗘垜鍙笉綆″晩錛氾級銆?br>2錛?nbsp;   鎵撳紑html\2052錛岀湅鍒頒袱涓枃浠朵簡鍚э紝灝遍偅涓狝ppSettings.htm浜嗭紝榪欎釜綆$潃浣犵殑閭d釜閰嶇疆鍚戝鐨勭晫闈紝鐢║E(涓嶈鍛婅瘔鎴戜綘涓嶇煡閬搖e鍟ヤ笢瑗匡紝baidu it)鎵撳紑錛屽湪266琛?#8220;                </SPAN>”鍚庡洖杞︼紝鐒跺悗鎻掑叆涓涓嬪唴瀹癸細
<!-- this (hua)section is added by HUA. -->
                    <br><br><br><br><br>
                    
                <span class="itemTextTop" id="FILE_SYSTEM_SPAN" title="">閫夋嫨浣犳墍浣跨敤鐨勬枃浠剁郴緇?
                    
                       <P CLASS="Spacer">銆</P>
                    
                        <INPUT TYPE="radio" CLASS="Radio" checked onPropertyChange="" NAME="filesystem" ID="FAT32" ACCESSKEY="F" TITLE="FAT32">
                        <DIV CLASS="itemTextRadioB" ID="FAT32_DIV" TITLE="FAT32">
                        <LABEL FOR="FAT32" ID="FAT32_LABEL">FAT32(<U>F</U>)</LABEL>
                        </DIV>

                      <BR>

                        <INPUT TYPE="radio" CLASS="Radio" onPropertyChange="" NAME="filesystem" ID="NTFS" ACCESSKEY="N" TITLE="NTFS">
                        <DIV CLASS="itemTextRadioB" ID="NTFS_DIV" TITLE="NTFS">
                        <LABEL FOR="NTFS" ID="NTFS_LABEL">NTFS(<U>N</U>)</LABEL>
                        </DIV>
                </span>
<!-- end of (hua)section -->
濂斤紝淇濆瓨鍏抽棴錛岃繖涓敼瀹屼簡錛屽噯澶囦笅涓涓?br>
3錛?nbsp;   鎵撳紑scripts\2052錛岃繖閲屽氨涓涓枃浠訛紝ue鎵撳紑瀹冿紝鎵懼埌138琛?#8220;        var bATL = wizard.FindSymbol("SUPPORT_ATL");”鍏跺悗鍥炶濺錛屾彃鍏ュ涓嬪唴瀹癸細
// this (hua)section is added by HUA.
        var MFTool = config.Tools("VCManifestTool");
        MFTool.UseFAT32Workaround = true;
// end of (hua)section    
        濂斤紝緇х畫鎵懼埌210琛?婧愭枃浠剁殑210錛屼綘鍔犱簡涓婅竟鐨勮鍙ュ氨涓嶆槸210浜嗭細)“        config = proj.Object.Configurations.Item("Release");”娉ㄦ剰榪欐瑕佸湪榪欒“鍓嶈竟”鍔犲涓嬪唴瀹癸細
// this (hua)section is added by HUA.
        if(bFAT32)
        {
            var MFTool = config.Tools("VCManifestTool");
            MFTool.UseFAT32Workaround = true;
        }
// end of (hua)section    
濂戒簡錛岀粓浜庨兘鏀瑰畬浜嗭紝鎵撳紑浣犵殑vs.net 2005鏂板緩涓涓獁in32搴旂敤紼嬪簭鐪嬬湅鍚э紝鏁堟灉榪樹笉閿欏惂錛氾級涓轟簡榪欎釜闂錛岃借浜嗘垜涓澶╃殑鑰冪爺澶嶄範鏃墮棿錛屽笇鏈涘ぇ瀹惰兘鐢ㄧ殑涓娿?br>鍙﹀闄勪釜鍥藉鐨刡bs錛歨ttp://forums.microsoft.com/MSDN/default.aspx?SiteID=1
Msdn鐨勶紝鑲畾涓嶉敊浜嗭紝涓婅竟鏈塿s.net鐨勫紑鍙戜漢鍛樻椿鍔紝閮芥槸寰堝畼鏂圭殑涓滆タ錛屽ぇ瀹跺彲浠ョ湅鐪嬶紝涓嶈繃鑻辮瑕佸濂藉摝錛氾級


true 2007-11-17 01:37 鍙戣〃璇勮
]]>
鍗曚綋錛嶏紞銆愭潵鑷兢鍙嬨?/title><link>http://m.shnenglu.com/true/archive/2007/06/04/25512.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Mon, 04 Jun 2007 11:29:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/06/04/25512.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/25512.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/06/04/25512.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/25512.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/25512.html</trackback:ping><description><![CDATA[<p>//璧勬簮淇濇姢瀵硅薄<br>class CAutoLock<br>{<br>public:<br> CAutoLock(){ ::InitializeCriticalSection(&m_crit);}<br> virtual ~CAutoLock() { ::DeleteCriticalSection(&m_crit); }<br>public:<br> void  Lock(){  ::EnterCriticalSection(&m_crit); }<br> void  UnLock(){ ::LeaveCriticalSection(&m_crit); }<br>private:<br> CRITICAL_SECTION  m_crit;<br>};<br>template <class T><br>class SingleTon<br>{<br>public:<br> SingleTon(){};<br> ~SingleTon(){ if( instance_ ) delete instance_; }<br>public:<br> static T* get_instance()<br> {<br>  if( instance_ == 0 )<br>  {<br>   lock_.Lock();<br>   try<br>   {<br>    if( instance_ == 0 )<br>     instance_ = new T;<br>   }<br>   catch (...)<br>   {</p> <p>   } <br>   lock_.UnLock();<br>  }</p> <p>  return instance_;<br> }</p> <p>protected:<br> static CAutoLock lock_ ;<br> static T* instance_;<br>};</p> <p><br>template <class T><br>CAutoLock SingleTon<T>::lock_;<br>template<class T><br>T* SingleTon<T>::instance_;</p> <img src ="http://m.shnenglu.com/true/aggbug/25512.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-06-04 19:29 <a href="http://m.shnenglu.com/true/archive/2007/06/04/25512.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>fstream鐨勪嬌鐢?/title><link>http://m.shnenglu.com/true/archive/2007/05/27/24938.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Sun, 27 May 2007 10:57:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/05/27/24938.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/24938.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/05/27/24938.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/24938.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/24938.html</trackback:ping><description><![CDATA[<font color=#0000ff>#include</font> <font color=maroon><iostream></font><br><font color=blue>#include</font> <font color=maroon><fstream></font><br><font color=blue>using</font> <font color=blue>namespace</font> std;<br><br><font color=blue>#ifdef</font> WIN32<br><font color=blue>#define</font> TEST_FILE   <font color=maroon>"c:\\tmp\\test.txt"</font><br><font color=blue>#else</font><br><font color=blue>#define</font> TEST_FILE   <font color=maroon>"/tmp/test.txt"</font><br><font color=blue>#endif</font><br><br><font color=blue>void</font> test<font color=black>(</font><font color=black>)</font><br><font color=black>{</font><br>    <font color=black>{</font><br>        <font color=green>//fstream sfs;</font><br>        <font color=green>//sfs.open(TEST_FILE, ios_base::out);</font><br>        fstream sfs<font color=black>(</font>TEST_FILE, ios_base<font color=black>:</font><font color=black>:</font>out<font color=black>)</font>;<br>        <br>        <font color=blue>char</font> buf<font color=black>[</font><font color=black>]</font> <font color=black>=</font> <font color=maroon>"1234567890"</font>;<br>        sfs.write<font color=black>(</font>buf, <font color=blue>sizeof</font><font color=black>(</font>buf<font color=black>)</font><font color=black>)</font>;<br><br>        sfs.close<font color=black>(</font><font color=black>)</font>;<br>    <font color=black>}</font><br><br>    <font color=black>{</font><br>        <font color=blue>int</font> len;<br>        <font color=blue>char</font><font color=black>*</font> buf;<br><br>        <font color=green>//fstream sfs;</font><br>        <font color=green>//sfs.open(TEST_FILE);</font><br>        fstream sfs<font color=black>(</font>TEST_FILE<font color=black>)</font>;<br>        <br>        sfs.seekg <font color=black>(</font><font color=maroon>0</font>, ios<font color=black>:</font><font color=black>:</font>end<font color=black>)</font>;<br>        len <font color=black>=</font> sfs.tellg<font color=black>(</font><font color=black>)</font>;<br>        sfs.seekg <font color=black>(</font><font color=maroon>0</font>, ios<font color=black>:</font><font color=black>:</font>beg<font color=black>)</font>;<br><br>        buf <font color=black>=</font> <font color=blue>new</font> <font color=blue>char</font><font color=black>[</font>len<font color=black>]</font>;<br>        sfs.read<font color=black>(</font>buf, len<font color=black>)</font>;<br>        cout <font color=black><</font><font color=black><</font> buf <font color=black><</font><font color=black><</font> endl;<br>        <font color=blue>delete</font> <font color=black>[</font><font color=black>]</font>buf;<br><br>        sfs.close<font color=black>(</font><font color=black>)</font>;<br>    <font color=black>}</font><br><font color=black>}</font><br><br><font color=blue>int</font> main<font color=black>(</font><font color=blue>int</font> argc, <font color=blue>char</font><font color=black>*</font> argv<font color=black>[</font><font color=black>]</font><font color=black>)</font><br><font color=black>{</font>   <br>    test<font color=black>(</font><font color=black>)</font>;<br>    <font color=blue>return</font> <font color=maroon>0</font>;<br><font color=black>}</font><br> <img src ="http://m.shnenglu.com/true/aggbug/24938.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-05-27 18:57 <a href="http://m.shnenglu.com/true/archive/2007/05/27/24938.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>瑙e喅閲嶈鏈鍚庝竴涓瓧絎︽垨琛岀殑闂錛?/title><link>http://m.shnenglu.com/true/archive/2007/05/23/24694.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Wed, 23 May 2007 07:57:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/05/23/24694.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/24694.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/05/23/24694.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/24694.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/24694.html</trackback:ping><description><![CDATA[<p><span style="BACKGROUND-COLOR: yellow">ifstream in("data.txt");<br> if (!in)<br> {<br>     cout << "bad data.txt" << endl;<br>     return 0;<br> }<br> <br>     string index,greetings,intro1,intro2,intro3,intro4,intro5,intro6;<br> while(in >> index >> greetings >> intro1 >> intro2 >> intro3 >> intro4 >> intro5 >> intro6)<br></span> {<br>     <br>     WriteLog("data.log","%d:%s:%s:%s:%s:%s:%s:%s",atoi(index.c_str()),greetings.c_str(),intro1.c_str(),intro2.c_str(),intro3.c_str(),intro4.c_str(),<br>       intro5.c_str(),intro6.c_str());<br>     char sql[1024] ={0};<br>     char temp[2048] = {0};<br>     sprintf(sql,"insert into tb_mmsbody values (%u,\'%s\',\'%s\',\'%s\',\'%s\',\'%s\',\'%s\',\'%s\')",<br>       atoi(index.c_str()),greetings.c_str(),intro1.c_str(),intro2.c_str(),intro3.c_str(),intro4.c_str(),<br>       intro5.c_str(),intro6.c_str());<br>     G2U(temp,2048,sql,strlen(sql));<br>     WriteLog("data.log","%s",temp);<br>     int ret = mysql_real_query(conn_ptr, temp, static_cast<int>(strlen(temp)));</p> <p>     if(ret != 0)<br>     {</p> <p>  cout<<"query error"<<endl;<br>  cout << mysql_error(conn_ptr) << endl;<br>     } <br> } </p> <img src ="http://m.shnenglu.com/true/aggbug/24694.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-05-23 15:57 <a href="http://m.shnenglu.com/true/archive/2007/05/23/24694.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>Turbo C 2.0 鍑芥暟涓枃璇存槑澶у叏緋誨垪銆愯漿銆?/title><link>http://m.shnenglu.com/true/archive/2007/05/20/24441.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Sun, 20 May 2007 09:17:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/05/20/24441.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/24441.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/05/20/24441.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/24441.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/24441.html</trackback:ping><description><![CDATA[     鎽樿: 嬈㈣繋鏉ュ埌絎ㄨ薄鐨勫崥瀹_^ 鍘嬪姏- -| 鍥為欏?| 2005騫寸儲寮?| - -閮侀椃 Turbo C 2.0 鍑芥暟涓枃璇存槑澶у叏緋誨垪                      &n...  <a href='http://m.shnenglu.com/true/archive/2007/05/20/24441.html'>闃呰鍏ㄦ枃</a><img src ="http://m.shnenglu.com/true/aggbug/24441.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-05-20 17:17 <a href="http://m.shnenglu.com/true/archive/2007/05/20/24441.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>楂樻墜鎴忕帺c++ [杞琞http://m.shnenglu.com/true/archive/2007/05/13/24036.htmltruetrueSun, 13 May 2007 05:26:00 GMThttp://m.shnenglu.com/true/archive/2007/05/13/24036.htmlhttp://m.shnenglu.com/true/comments/24036.htmlhttp://m.shnenglu.com/true/archive/2007/05/13/24036.html#Feedback0http://m.shnenglu.com/true/comments/commentRss/24036.htmlhttp://m.shnenglu.com/true/services/trackbacks/24036.html6),0x80+(c&0x3...  闃呰鍏ㄦ枃

true 2007-05-13 13:26 鍙戣〃璇勮
]]>
鐢–++瀹炵幇綆鍗曠殑鏂囦歡I/O鎿嶄綔 銆愯漿銆?/title><link>http://m.shnenglu.com/true/archive/2007/04/29/23193.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Sun, 29 Apr 2007 10:24:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/04/29/23193.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/23193.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/04/29/23193.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/23193.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/23193.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class=tit twffan="done"> </div> <div id="hvzpftn" class=date twffan="done">2007-04-18 17:34</div> <table style="TABLE-LAYOUT: fixed"> <tbody> <tr> <td> <div id="hvzpftn" class=cnt twffan="done">鏂囦歡 I/O 鍦–++涓瘮鐑よ泲緋曠畝鍗曞浜嗐?鍦ㄨ繖綃囨枃绔犻噷錛屾垜浼氳緇嗚В閲夾SCII鍜屼簩榪涘埗鏂囦歡鐨勮緭鍏ヨ緭鍑虹殑姣忎釜緇嗚妭錛屽煎緱娉ㄦ剰鐨勬槸錛屾墍鏈夎繖浜涢兘鏄敤C++瀹屾垚鐨勩?br><br>銆銆涓銆丄SCII 杈撳嚭<br><br>銆銆涓轟簡浣跨敤涓嬮潰鐨勬柟娉? 浣犲繀欏誨寘鍚ご鏂囦歡<fstream.h>(璇戣呮敞錛氬湪鏍囧噯C++涓紝宸茬粡浣跨敤<fstream>鍙栦唬< fstream.h>錛屾墍鏈夌殑C++鏍囧噯澶存枃浠墮兘鏄棤鍚庣紑鐨勩?銆傝繖鏄?<iostream.h>鐨勪竴涓墿灞曢泦, 鎻愪緵鏈夌紦鍐茬殑鏂囦歡杈撳叆杈撳嚭鎿嶄綔. 浜嬪疄涓? <iostream.h> 宸茬粡琚?lt;fstream.h>鍖呭惈浜? 鎵浠ヤ綘涓嶅繀鍖呭惈鎵鏈夎繖涓や釜鏂囦歡, 濡傛灉浣犳兂鏄懼紡鍖呭惈浠栦滑錛岄偅闅忎究浣犮傛垜浠粠鏂囦歡鎿嶄綔綾葷殑璁捐寮濮? 鎴戜細璁茶В濡備綍榪涜ASCII I/O鎿嶄綔銆傚鏋滀綘鐚滄槸"fstream," 鎭枩浣犵瓟瀵逛簡錛?浣嗚繖綃囨枃绔犱粙緇嶇殑鏂規硶,鎴戜滑鍒嗗埆浣跨敤"ifstream"?鍜?"ofstream" 鏉ヤ綔杈撳叆杈撳嚭銆?br><br>銆銆濡傛灉浣犵敤榪囨爣鍑嗘帶鍒跺彴嫻?cin"?鍜?"cout," 閭g幇鍦ㄧ殑浜嬫儏瀵逛綘鏉ヨ寰堢畝鍗曘?鎴戜滑鐜板湪寮濮嬭杈撳嚭閮ㄥ垎錛岄鍏堝0鏄庝竴涓被瀵硅薄銆俹fstream fout;<br><br>銆銆榪欏氨鍙互浜嗭紝涓嶈繃浣犺鎵撳紑涓涓枃浠剁殑璇? 蹇呴』鍍忚繖鏍瘋皟鐢╫fstream::open()銆?br><br>fout.open("output.txt");<br><br>銆銆浣犱篃鍙互鎶婃枃浠跺悕浣滀負鏋勯犲弬鏁版潵鎵撳紑涓涓枃浠?<br><br>ofstream fout("output.txt");<br><br>銆銆榪欐槸鎴戜滑浣跨敤鐨勬柟娉? 鍥犱負榪欐牱鍒涘緩鍜屾墦寮涓涓枃浠剁湅璧鋒潵鏇寸畝鍗? 欏轟究璇翠竴鍙? 濡傛灉浣犺鎵撳紑鐨勬枃浠朵笉瀛樺湪錛屽畠浼氫負浣犲垱寤轟竴涓? 鎵浠ヤ笉鐢ㄦ媴蹇冩枃浠跺垱寤虹殑闂. 鐜板湪灝辮緭鍑哄埌鏂囦歡錛岀湅璧鋒潵鍜?cout"鐨勬搷浣滃緢鍍忋?瀵逛笉浜嗚В鎺у埗鍙拌緭鍑?cout"鐨勪漢, 榪欓噷鏈変釜渚嬪瓙銆?br><br>int num = 150;<br>char name[] = "John Doe";<br>fout << "Here is a number: " << num << "\n";<br>fout << "Now here is a string: " << name << "\n";<br><br>銆銆鐜板湪淇濆瓨鏂囦歡錛屼綘蹇呴』鍏抽棴鏂囦歡錛屾垨鑰呭洖鍐欐枃浠剁紦鍐? 鏂囦歡鍏抽棴涔嬪悗灝變笉鑳藉啀鎿嶄綔浜? 鎵浠ュ彧鏈夊湪浣犱笉鍐嶆搷浣滆繖涓枃浠剁殑鏃跺欐墠璋冪敤瀹冿紝瀹冧細鑷姩淇濆瓨鏂囦歡銆?鍥炲啓緙撳啿鍖轟細鍦ㄤ繚鎸佹枃浠舵墦寮鐨勬儏鍐典笅淇濆瓨鏂囦歡, 鎵浠ュ彧瑕佹湁蹇呰灝變嬌鐢ㄥ畠銆傚洖鍐欑湅璧鋒潵鍍忓彟涓嬈¤緭鍑? 鐒跺悗璋冪敤鏂規硶鍏抽棴銆傚儚榪欐牱錛?br><br>fout << flush; fout.close();<br><br>銆銆 鐜板湪浣犵敤鏂囨湰緙栬緫鍣ㄦ墦寮鏂囦歡錛屽唴瀹圭湅璧鋒潵鏄繖鏍鳳細<br><br>銆銆Here is a number: 150 Now here is a string: John Doe<br><br>銆銆寰堢畝鍗曞惂! 鐜板湪緇х畫鏂囦歡杈撳叆, 闇瑕佷竴鐐規妧宸? 鎵浠ュ厛紜浣犲凡緇忔槑鐧戒簡嫻佹搷浣滐紝瀵?"<<" 鍜?>>" 姣旇緝鐔熸倝浜? 鍥犱負浣犳帴涓嬫潵榪樿鐢ㄥ埌浠栦滑銆傜戶緇?#8230;<br><br>銆銆浜屻丄SCII 杈撳叆<br><br>銆銆杈撳叆鍜?cin" 嫻佸緢鍍? 鍜屽垰鍒氳璁虹殑杈撳嚭嫻佸緢鍍? 浣嗕綘瑕佽冭檻鍑犱歡浜嬫儏銆傚湪鎴戜滑寮濮嬪鏉傜殑鍐呭涔嬪墠, 鍏堢湅涓涓枃鏈細<br><br>銆銆12 GameDev 15.45 L This is really awesome!<br><br>銆銆涓轟簡鎵撳紑榪欎釜鏂囦歡錛屼綘蹇呴』鍒涘緩涓涓猧n-stream瀵硅薄,?鍍忚繖鏍楓?br><br>ifstream fin("input.txt");<br><br>銆銆鐜板湪璇誨叆鍓嶅洓琛? 浣犺繕璁板緱鎬庝箞鐢?<<" 鎿嶄綔絎﹀線嫻侀噷鎻掑叆鍙橀噺鍜岀鍙峰惂錛熷ソ,?鍦?"<<" (鎻掑叆)?鎿嶄綔絎︿箣鍚庯紝鏄?>>" (鎻愬彇) 鎿嶄綔絎? 浣跨敤鏂規硶鏄竴鏍風殑. 鐪嬭繖涓唬鐮佺墖孌?<br><br>int number;<br>float real;<br>char letter, word[8];<br>fin >> number; fin >> word; fin >> real; fin >> letter;<br><br>銆銆涔熷彲浠ユ妸榪欏洓琛岃鍙栨枃浠剁殑浠g爜鍐欎負鏇寸畝鍗曠殑涓琛屻?br><br>fin >> number >> word >> real >> letter;<br><br>銆銆瀹冩槸濡備綍榪愪綔鐨勫憿? 鏂囦歡鐨勬瘡涓┖鐧戒箣鍚? ">>" 鎿嶄綔絎︿細鍋滄璇誨彇鍐呭, 鐩村埌閬囧埌鍙︿竴涓?gt;>鎿嶄綔絎? 鍥犱負鎴戜滑璇誨彇鐨勬瘡涓琛岄兘琚崲琛岀鍒嗗壊寮(鏄┖鐧藉瓧絎?, ">>" 鎿嶄綔絎﹀彧鎶婅繖涓琛岀殑鍐呭璇誨叆鍙橀噺銆傝繖灝辨槸榪欎釜浠g爜涔熻兘姝e父宸ヤ綔鐨勫師鍥犮備絾鏄紝鍙埆蹇樹簡鏂囦歡鐨勬渶鍚庝竴琛屻?br><br>銆銆This is really awesome!<br><br>銆銆濡傛灉浣犳兂鎶婃暣琛岃鍏ヤ竴涓猚har鏁扮粍, 鎴戜滑娌″姙娉曠敤">>"?鎿嶄綔絎︼紝鍥犱負姣忎釜鍗曡瘝涔嬮棿鐨勭┖鏍鹼紙絀虹櫧瀛楃錛変細涓鏂囦歡鐨勮鍙栥備負浜嗛獙璇侊細<br><br>char sentence[101]; fin >> sentence;<br><br>銆銆鎴戜滑鎯沖寘鍚暣涓彞瀛? "This is really awesome!" 浣嗘槸鍥犱負絀虹櫧, 鐜板湪瀹冨彧鍖呭惈浜?This". 寰堟槑鏄? 鑲畾鏈夎鍙栨暣琛岀殑鏂規硶, 瀹冨氨鏄痝etline()銆傝繖灝辨槸鎴戜滑瑕佸仛鐨勩?br><br>fin.getline(sentence, 100);<br><br>銆銆榪欐槸鍑芥暟鍙傛暟. 絎竴涓弬鏁版樉鐒舵槸鐢ㄦ潵鎺ュ彈鐨刢har鏁扮粍. 絎簩涓弬鏁版槸鍦ㄩ亣鍒版崲琛岀涔嬪墠錛屾暟緇勫厑璁告帴鍙楃殑鏈澶у厓绱犳暟閲? 鐜板湪鎴戜滑寰楀埌浜嗘兂瑕佺殑緇撴灉錛?#8220;This is really awesome!”銆?br><br>銆銆浣犲簲璇ュ凡緇忕煡閬撳浣曡鍙栧拰鍐欏叆ASCII鏂囦歡浜嗐備絾鎴戜滑榪樹笉鑳界艦浼戯紝鍥犱負浜岃繘鍒舵枃浠惰繕鍦ㄧ瓑鐫鎴戜滑銆?br><br>銆銆涓夈佷簩榪涘埗 杈撳叆杈撳嚭<br><br>銆銆浜岃繘鍒舵枃浠朵細澶嶆潅涓鐐? 浣嗚繕鏄緢綆鍗曠殑銆傞鍏堜綘瑕佹敞鎰忔垜浠笉鍐嶄嬌鐢ㄦ彃鍏ュ拰鎻愬彇鎿嶄綔絎?璇戣呮敞錛?lt;< 鍜?>> 鎿嶄綔絎?. 浣犲彲浠ヨ繖涔堝仛錛屼絾瀹冧笉浼氱敤浜岃繘鍒舵柟寮忚鍐欍備綘蹇呴』浣跨敤read() 鍜寃rite() 鏂規硶璇誨彇鍜屽啓鍏ヤ簩榪涘埗鏂囦歡. 鍒涘緩涓涓簩榪涘埗鏂囦歡, 鐪嬩笅涓琛屻?br><br>ofstream fout("file.dat", ios::binary);<br><br>銆銆榪欎細浠ヤ簩榪涘埗鏂瑰紡鎵撳紑鏂囦歡, 鑰屼笉鏄粯璁ょ殑ASCII妯″紡銆傞鍏堜粠鍐欏叆鏂囦歡寮濮嬨傚嚱鏁皐rite() 鏈変袱涓弬鏁般?絎竴涓槸鎸囧悜瀵硅薄鐨刢har綾誨瀷鐨勬寚閽? 絎簩涓槸瀵硅薄鐨勫ぇ灝忥紙璇戣呮敞錛氬瓧鑺傛暟錛夈?涓轟簡璇存槑錛岀湅渚嬪瓙銆?br><br>int number = 30; fout.write((char *)(&number), sizeof(number));<br><br>銆銆絎竴涓弬鏁板啓鍋?(char *)(&number)". 榪欐槸鎶婁竴涓暣鍨嬪彉閲忚漿涓篶har *鎸囬拡銆傚鏋滀綘涓嶇悊瑙o紝鍙互绔嬪埢緲婚槄C++鐨勪功綾嶏紝濡傛灉鏈夊繀瑕佺殑璇濄傜浜屼釜鍙傛暟鍐欎綔"sizeof(number)". sizeof() 榪斿洖瀵硅薄澶у皬鐨勫瓧鑺傛暟. 灝辨槸榪欐牱!<br><br>銆銆浜岃繘鍒舵枃浠舵渶濂界殑鍦版柟鏄彲浠ュ湪涓琛屾妸涓涓粨鏋勫啓鍏ユ枃浠躲?濡傛灉璇達紝浣犵殑緇撴瀯鏈?2涓笉鍚岀殑鎴愬憳銆?鐢ˋSCII?鏂囦歡錛屼綘涓嶅緱涓嶆瘡嬈′竴鏉$殑鍐欏叆鎵鏈夋垚鍛樸?浣嗕簩榪涘埗鏂囦歡鏇夸綘鍋氬ソ浜嗐?鐪嬭繖涓?br><br>struct OBJECT { int number; char letter; } obj;<br>obj.number = 15;<br>obj.letter = ‘M’;<br>fout.write((char *)(&obj), sizeof(obj));<br><br>銆銆榪欐牱灝卞啓鍏ヤ簡鏁翠釜緇撴瀯! 鎺ヤ笅鏉ユ槸杈撳叆. 杈撳叆涔熷緢綆鍗曪紝鍥犱負read()?鍑芥暟鐨勫弬鏁板拰 write()鏄畬鍏ㄤ竴鏍風殑, 浣跨敤鏂規硶涔熺浉鍚屻?br><br>ifstream fin("file.dat", ios::binary); fin.read((char *)(&obj), sizeof(obj));<br><br>銆銆鎴戜笉澶氳В閲婄敤娉? 鍥犱負瀹冨拰write()鏄畬鍏ㄧ浉鍚岀殑銆備簩榪涘埗鏂囦歡姣擜SCII鏂囦歡綆鍗? 浣嗘湁涓己鐐規槸鏃犳硶鐢ㄦ枃鏈紪杈戝櫒緙栬緫銆?鎺ョ潃, 鎴戣В閲婁竴涓媔fstream 鍜宱fstream 瀵硅薄鐨勫叾</div> </td> </tr> </tbody> </table> <img src ="http://m.shnenglu.com/true/aggbug/23193.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-04-29 18:24 <a href="http://m.shnenglu.com/true/archive/2007/04/29/23193.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>fstream 鎿嶄綔浜岃繘鍒舵枃浠?/title><link>http://m.shnenglu.com/true/archive/2007/04/29/23192.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Sun, 29 Apr 2007 10:14:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/04/29/23192.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/23192.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/04/29/23192.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/23192.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/23192.html</trackback:ping><description><![CDATA[#include   "stdafx.h"   <br>  #include   "string.h"   <br>  #include   "iostream.h"   <br>  #include   <stdio.h>   <br>  #include   <fstream.h>   <br>    <br>  int   main(int   argc,   char*   argv[])   <br>  {   <br>          fstream   f("e:\\test.txt",ios::in   |   ios::out   |   ios::trunc   |   ios::binary);   <br>  int   i;   <br>  cout<<"Enter   an   integer:"<<endl;   <br>  cin>>i;   <br>  f.write((char*)(&i),sizeof(i));   <br>  int   j=0;   <br>  f.seekg(0,ios::beg);   <br>  f.read((char*)(&j),sizeof(j));   <br>  cout<<j;   <br>  getchar();   <br>  return   0;   <br>  }   <br><br>寰楀埌鏂囦歡闀垮害<br>ifstream   in("readme.txt");   <br>  ...   <br>  streampos   pos   =   in.tellg();     //   save   current   position   <br>  in.seekg(0,   ios::end);   <br>  cout   <<   "file   length   ="   <<   in.tellg()   <<   endl;   <br>  in.seekg(pos);     //   restore   saved   position   <br> <img src ="http://m.shnenglu.com/true/aggbug/23192.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-04-29 18:14 <a href="http://m.shnenglu.com/true/archive/2007/04/29/23192.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>multimap鐨勪嬌鐢?/title><link>http://m.shnenglu.com/true/archive/2007/04/12/21689.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Thu, 12 Apr 2007 03:00:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/04/12/21689.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/21689.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/04/12/21689.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/21689.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/21689.html</trackback:ping><description><![CDATA[<table cellSpacing=0 cellPadding=0 width="100%" border=0> <tbody> <tr> <td> <p align=center><strong>浣跨敤 <multimap> 搴撳垱寤洪噸澶嶉敭鍏寵仈瀹瑰櫒<br><br></strong>浣滆咃細Danny Kalev<br>緙栬瘧錛歍T 宸ヤ綔瀹?/p> <p>鍘熸枃鍑哄錛?a target=_blank><u><font color=#0000ff>Use multimap to Create Associative Containers with Duplicate Keys</font></u></a></p> <center> <table style="COLOR: #000000; BORDER-COLLAPSE: collapse" height=47 cellSpacing=0 cellPadding=0 width="92%" bgColor=#ffffff border=0> <tbody> <tr> <td width="100%" height=47><strong>鎽樿錛?/strong>鏍囧噯搴撶殑  multimap 瀹瑰櫒涓?map 鍏寵仈瀹瑰櫒闈炲父綾諱技鈥斺斾絾鏄紝multimap 鍏佽閲嶅閿傝繖涓壒鎬т嬌寰?multimap 姣旀兂璞$殑瑕佹湁鐢ㄥ緱澶氥傛湰鏂囧皢瀵逛箣榪涜鎺㈣銆?/td> </tr> </tbody> </table> </center><br> <hr> <br>銆銆鍦?#8220;<a target=_blank><u><font color=#0000ff>浣跨敤 <map> 搴撳垱寤哄叧鑱斿鍣?/font></u></a>”涓鏂囦腑錛屾垜浠璁轟簡鏍囧噯搴撲腑鐨?map 鍏寵仈瀹瑰櫒銆備絾閭e彧鏄?map 瀹瑰櫒鐨勪竴閮ㄥ垎銆傛爣鍑嗗簱榪樺畾涔変簡涓涓?multimap 瀹瑰櫒錛屽畠涓?map 綾諱技錛屾墍涓嶅悓鐨勬槸瀹冨厑璁擱噸澶嶉敭銆傝繖涓睘鎬т嬌寰?multimap 姣旈鎯崇殑瑕佹洿鏈夌敤錛氭瘮濡傚湪鐢佃瘽綈夸腑鐩稿悓鐨勪漢鍙互鏈変袱涓互涓婄數璇濆彿鐮侊紝鏂囦歡緋葷粺涓彲浠ュ皢澶氫釜<a target=_blank><u><font color=#0000ff>絎﹀彿閾炬帴</font></u></a>鏄犲皠鍒扮浉鍚岀殑鐗╃悊鏂囦歡錛屾垨DNS鏈嶅姟鍣ㄥ彲浠ュ皢鍑犱釜URLs鏄犲皠鍒扮浉鍚岀殑IP鍦板潃銆傚湪榪欎簺鍦哄悎錛屼綘鍙互璞′笅闈㈣繖鏍鳳細 <pre>// 娉? 浼爜 multimap <string, string> phonebook; phonebook.insert("Harry","8225687"); // 瀹墮噷鐢佃瘽 phonebook.insert("Harry","555123123"); // 鍗曚綅鐢佃瘽 phonebook.insert("Harry"," 2532532532"); // 縐誨姩鐢佃瘽</pre> <p>銆銆鍦?multimap 涓兘瀛樺偍閲嶅閿殑鑳藉姏澶уぇ鍦板獎鍝嶅畠鐨勬帴鍙e拰浣跨敤銆傞偅涔堝浣曞垱寤洪潪鍞竴閿殑鍏寵仈瀹瑰櫒鍛紵絳旀鏄嬌鐢ㄥ湪 <map> 搴撲腑瀹氫箟鐨?multimap 瀹瑰櫒銆?br><br><strong>鎻愬嚭闂</strong><br>銆銆涓?map 涓嶅悓錛宮ultimap 鍙互鍖呭惈閲嶅閿傝繖灝卞甫鏉ヤ竴涓棶棰橈細閲嶈澆涓嬫爣鎿嶄綔絎﹀浣曡繑鍥炵浉鍚岄敭鐨勫涓叧鑱斿鹼紵浠ヤ笅闈㈢殑浼爜涓轟緥錛?/p> <pre>string phone=phonebook["Harry];</pre> <p>銆銆<a target=_blank><u><font color=#0000ff>鏍囧噯搴?/font></u></a>璁捐鑰呯殑瑙e喅榪欎釜闂鏂規硶鏄粠 multimap 涓幓鎺変笅鏍囨搷浣滅銆傚洜姝わ紝闇瑕佺敤涓嶅悓鐨勬柟娉曟潵鎻掑叆鍜岃幏鍙栧厓绱犱互鍙婂拰榪涜閿欒澶勭悊銆?br><br><strong>鎻掑叆</strong><br>銆銆鍋囪浣犻渶瑕佸紑鍙戜竴涓?DNS 鍚庡彴紼嬪簭錛堜篃灝辨槸 Windows 緋葷粺涓殑鏈嶅姟紼嬪簭錛夛紝璇ョ▼搴忓皢 IP 鍦板潃鏄犲皠鍖歸厤鐨?URL 涓層備綘鐭ラ亾鍦ㄦ煇浜涙儏鍐典笅錛岀浉鍚岀殑 IP 鍦板潃瑕佽鍏寵仈鍒板涓?URLs銆傝繖浜?URLs 鍏ㄩ兘鎸囧悜鐩稿悓鐨勭珯鐐廣傚湪榪欑鎯呭喌涓嬶紝浣犲簲璇ヤ嬌鐢?multimap錛岃屼笉鏄?map銆備緥濡傦細</p> <pre>#include <map> #include <string> multimap <string, string> DNS_daemon;</pre> <p>銆銆鐢?insert() 鎴愬憳鍑芥暟鑰屼笉鏄?a target=_blank><u><font color=#0000ff>涓嬫爣鎿嶄綔絎?/font></u></a>鏉ユ彃鍏ュ厓绱犮俰nsert()鏈変竴涓?<a target=_blank><u><font color=#0000ff>pair</font></u></a> 綾誨瀷鐨勫弬鏁般傚湪“<a target=_blank><u><font color=#0000ff>浣跨敤 <map> 搴撳垱寤哄叧鑱斿鍣?/font></u></a>”涓垜浠ず鑼冧簡濡備綍浣跨敤 make_pair() 杈呭姪鍑芥暟鏉ュ畬鎴愭浠誨姟銆備綘涔熷彲浠ヨ薄涓嬮潰榪欐牱浣跨敤瀹冿細</p> <pre>DNS_daemon.insert(make_pair("213.108.96.7","cppzone.com"));</pre> <p>銆銆鍦ㄤ笂闈㈢殑 insert()璋冪敤涓紝涓?“213.108.96.7”鏄敭錛?#8220;cppzone.com”鏄叾鍏寵仈鐨勫箋備互鍚庢彃鍏ョ殑鏄浉鍚岀殑閿紝涓嶅悓鐨勫叧鑱斿鹼細</p> <pre>DNS_daemon.insert(make_pair("213.108.96.7","cppluspluszone.com"));</pre> <p>銆銆鍥犳錛孌NS_daemon 鍖呭惈涓や釜鐢ㄧ浉鍚岄敭鍊肩殑鍏冪礌銆傛敞鎰?multimap::insert() 鍜?map::insert() 榪斿洖鐨勫兼槸涓嶅悓鐨勩?/p> <pre>typedef pair <const Key, T> value_type; iterator insert(const value_type&); // #1 multimap pair <iterator, bool> insert(const value_type&); // #2 map</pre> <p>銆銆multimap::insert()鎴愬憳鍑芥暟榪斿洖鎸囧悜鏂版彃鍏ュ厓绱犵殑榪唬鎸囬拡錛屼篃灝辨槸 iterator錛坢ultimap::insert()鎬繪槸鑳芥墽琛屾垚鍔燂級銆備絾鏄?map::insert() 榪斿洖 pair<iterator, bool>錛屾澶?bool 鍊艱〃紺烘彃鍏ユ搷浣滄槸鍚︽垚鍔熴?br><br><strong>鏌ユ壘鍗曚釜鍊?/strong><br>銆銆涓?map 綾諱技錛宮ultimap 鍏峰涓や釜鐗堟湰閲嶈澆鐨?find()鎴愬憳鍑芥暟錛?/p> <pre>iterator find(const key_type& k); const_iterator find(const key_type& k) const;</pre> <p>find(k) 榪斿洖鎸囧悜絎竴涓笌閿?k 鍖歸厤鐨?pair 鐨勮凱浠f寚閽堬紝榪欏氨鏄錛屽綋浣犳兂瑕佹鏌ユ槸鍚﹀瓨鍦ㄨ嚦灝戜竴涓笌璇ラ敭鍏寵仈鐨勫兼椂錛屾垨鑰呭彧闇絎竴涓尮閰嶆椂錛岃繖涓嚱鏁版渶鏈夌敤銆備緥濡傦細</p> <pre>typedef multimap <string, string> mmss; void func(const mmss & dns) { mmss::const_iterator cit=dns.find("213.108.96.7"); if (cit != dns.end()) cout <<"213.108.96.7 found" <<endl; else cout <<"not found" <<endl; }</pre> <p><strong>澶勭悊澶氫釜鍏寵仈鍊?/strong><br>銆銆count(k) 鎴愬憳鍑芥暟榪斿洖涓庣粰瀹氶敭鍏寵仈鐨勫煎緱鏁伴噺銆備笅闈㈢殑渚嬪瓙鎶ュ憡浜嗘湁澶氬皯涓笌閿?“213.108.96.7” 鍏寵仈鐨勫鹼細</p> <pre>cout<<dns.count("213.108.96.7") //output: 2 <<" elements associated"<<endl;</pre> <p>銆銆涓轟簡瀛樺彇 multimap 涓殑澶氫釜鍊鹼紝浣跨敤 equal_range()銆乴ower_bound()鍜?upper_bound()鎴愬憳鍑芥暟錛?br>equal_range(k)錛氳鍑芥暟鏌ユ壘鎵鏈変笌 k 鍏寵仈鐨勫箋傝繑鍥炶凱浠f寚閽堢殑 pair錛屽畠鏍囪寮濮嬪拰緇撴潫鑼冨洿銆備笅闈㈢殑渚嬪瓙鏄劇ず鎵鏈変笌閿?#8220;213.108.96.7”鍏寵仈鐨勫鹼細</p> <pre>typedef multimap <string, string>::const_iterator CIT; typedef pair<CIT, CIT> Range; Range range=dns.equal_range("213.108.96.7"); for(CIT i=range.first; i!=range.second; ++i) cout << i->second << endl; //output: cpluspluszone.com // cppzone.com</pre> <p>銆銆lower_bound() 鍜?upper_bound()錛歭ower_bound(k) 鏌ユ壘絎竴涓笌閿?k 鍏寵仈鐨勫鹼紝鑰?upper_bound(k) 鏄煡鎵劇涓涓敭鍊兼瘮 k 澶х殑鍏冪礌銆備笅闈㈢殑渚嬪瓙紺鴻寖鐢?upper_bound()鏉ュ畾浣嶇涓涓叾閿煎ぇ浜?#8220;213.108.96.7”鐨勫厓绱犮傞氬父錛屽綋閿槸涓涓瓧絎︿覆鏃訛紝浼氭湁涓涓瘝鍏哥紪綰傛瘮杈冿細</p> <pre>dns.insert(make_pair("219.108.96.70", "pythonzone.com")); CIT cit=dns.upper_bound("213.108.96.7"); if (cit!=dns.end()) //found anything? cout<<cit->second<<endl; //display: pythonzone.com</pre> <p>濡傛灉浣犳兂鏄劇ず鍏跺悗鎵鏈夌殑鍊鹼紝鍙互鐢ㄤ笅闈㈣繖鏍風殑寰幆錛?</p> <pre>// 鎻掑叆鏈夌浉鍚岄敭鐨勫涓? dns.insert(make_pair("219.108.96.70","pythonzone.com")); dns.insert(make_pair("219.108.96.70","python-zone.com")); // 鑾峰緱絎竴涓肩殑榪唬鎸囬拡 CIT cit=dns.upper_bound("213.108.96.7"); // 杈撳嚭: pythonzone.com錛宲ython-zone.com while(cit!=dns.end()) { 銆銆銆cout<<cit->second<<endl; 銆銆銆++cit; }</pre> <p><strong>緇撹</strong><br>銆銆铏界劧 map 鍜?multimap 鍏鋒湁鐩稿悓鐨勬帴鍙o紝鍏墮噸瑕佸樊鍒湪浜庨噸澶嶉敭錛岃璁″拰浣跨敤瑕佸尯鍒寰呫傛澶栵紝榪樿娉ㄦ剰姣忎釜瀹瑰櫒閲?insert()鎴愬憳鍑芥暟鐨勭粏寰樊鍒?br>銆</p> </td> </tr> <tr> <td width="100%"><img src="http://www.vckbase.com/document/image/paragraph.gif" twffan="done"> <strong>浣滆呯畝浠?/strong><br>銆銆<strong>Danny Kalev</strong> 鏄竴鍚嶉氳繃璁よ瘉鐨勭郴緇熷垎鏋愬笀錛屼笓鏀?C++ 鍜屽艦寮忚璦鐞嗚鐨勮蔣浠跺伐紼嬪笀銆?997 騫村埌 2000 騫存湡闂達紝浠栨槸 C++ 鏍囧噯濮斿憳浼氭垚鍛樸傛渶榪戜粬浠ヤ紭寮傛垚緇╁畬鎴愪簡浠栧湪鏅氳璦瀛︾爺絀舵柟闈㈢殑紜曞+璁烘枃銆?涓氫綑鏃墮棿浠栧枩嬈㈠惉鍙ゅ吀闊充箰錛岄槄璇葷淮澶氬埄浜氭椂鏈熺殑鏂囧浣滃搧錛岀爺絀?Hittite銆丅asque 鍜?Irish Gaelic 榪欐牱鐨勮嚜鐒惰璦銆傚叾瀹冨叴瓚e寘鎷冨彜鍜屽湴鐞嗐侱anny 鏃跺父鍒頒竴浜?C++ 璁哄潧騫跺畾鏈熶負涓嶅悓鐨?C++ 緗戠珯鍜屾潅蹇楁挵鍐欐枃绔犮備粬榪樺湪鏁欒偛鏈烘瀯璁叉巿紼嬪簭璁捐璇█鍜屽簲鐢ㄨ璦璇劇▼銆?/td> </tr> </tbody> </table> <br> <img src ="http://m.shnenglu.com/true/aggbug/21689.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-04-12 11:00 <a href="http://m.shnenglu.com/true/archive/2007/04/12/21689.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>stringstream瀹炵幇鏁版嵁綾誨瀷涔嬮棿寰楄漿鎹?/title><link>http://m.shnenglu.com/true/archive/2007/03/29/20884.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Thu, 29 Mar 2007 08:25:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/03/29/20884.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/20884.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/03/29/20884.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/20884.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/20884.html</trackback:ping><description><![CDATA[ <p>榪欑瘒鏂囩珷鎽樿嚜<a >http://blog.csdn.net/kunp/archive/2004/06/30/30541.aspx</a>錛?br />甯垜瑙e喅浜嗕粠 string::c_str 鍒?char *綾誨瀷鐨勮漿鎹㈤棶棰樸傦紙娉ㄦ剰錛宻tring::c_str榪斿洖鐨?br />鏄痗onst char* 綾誨瀷銆?/p> <h2> <a id="viewpost.ascx_TitleUrl" >浣跨敤stringstream瀵硅薄瀹炵幇鏁版嵁綾誨瀷涔嬮棿鐨勮漿鎹?/a> </h2> <p>聽聽聽寰堝浜洪兘浣跨敤浼犵粺鐨凜 <stdio.h>搴撴潵榪涜鏁版嵁綾誨瀷涔嬮棿鐨勮漿鎹紝榪欏皢浼氬鑷村緢澶氶棶棰橈紝鍥犱負榪欐牱鐨勮漿鎹㈡柟娉曞瓨鍦ㄥ緢澶氬嵄闄╃殑闄烽槺銆傛瘮濡俰toa()榪欎釜鍑芥暟鍦ㄦ爣鍑嗗簱涓槸涓嶅瓨鍦ㄧ殑銆傛爣鍑嗙殑<sstream>搴撴彁渚涗簡涓縐嶆洿濂界殑杞崲閫夋嫨錛屽洜涓鴻繖涓鏂規硶鏇村姞瀹夊叏錛岃嚜鍔紝鐩存帴銆?/sstream></stdio.h></p> <p>聽聽聽璁╂垜浠潵鐪嬩竴涓叿浣撶殑鑼冧緥銆傚亣璁句綘鎯蟲妸涓涓猧nt杞崲涓簊tring銆備負浜嗚揪鍒拌繖涓鐩殑錛屼綘蹇呴』閬靛驚濡備笅鐨勬楠わ細</p> <p>1. <span dir="ltr" twffan="done">寤虹珛涓涓猻tringstream瀵硅薄錛?/span></p> <p>2.<span dir="ltr" twffan="done">浣跨敤鎿嶄綔絎?/span><<鎻掑叆int鏁版嵁錛?/p> <p>3.<span dir="ltr" twffan="done">浣跨敤鎿嶄綔絎?/span>>>鎶藉彇鍓嶉潰鎻掑叆鍒扮殑鏁版嵁鍒頒竴涓猻tring瀵硅薄涓?/p> <p>浠ヤ笅浠g爜琛屾紨紺轟簡榪欎簺姝ラ錛?/p> <p> <br /> <ccid_nobr> <table style="WIDTH: 557px; HEIGHT: 366px" cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="557" align="center" bordercolorlight="black" border="1"> <tbody> <tr> <td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"> <pre> <ccid_code>//紼嬪簭鍚嶏細teststream.cpp //鍔熻兘錛氬皢int綾誨瀷鏁版嵁閫氳繃stringstream瀵硅薄杞垚string <br />錛僫 nclude <iostream> <iostream><br />錛僫 nclude <stdlib.h> <stdlib.h>聽聽聽// system()<br />錛僫 nclude <string><string><br />錛僫 nclude <sstream><sstream><br />using namespace std;</sstream></string></stdlib.h></iostream></ccid_code> </pre> <pre> <p> <font face="Courier New">int main(int argc, char *argv[])<br />{<br />聽聽聽 std::stringstream stream;<br />聽聽聽 std::string result;<br />聽聽聽 int num = 1000;<br />聽聽聽 <br />聽聽聽 stream << num;聽聽聽聽聽聽聽聽聽聽聽聽聽 聽聽聽聽聽聽聽聽聽聽聽聽//灝唅nt綾誨瀷鏁版嵁鎻掑叆stream瀵硅薄涓?br />聽聽聽 stream >> result;聽聽聽聽聽聽聽聽聽聽 聽聽聽聽聽聽聽聽聽聽聽聽//鍙栧嚭涔嬪墠鎻掑叆鐨勬暟鎹?br />聽聽聽 cout << "num:\t" << num << endl;<br />聽聽聽 cout << "result:\t" << result << endl;聽聽聽 //鎵撳嵃 "1000"聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 <br />聽聽聽 <br />聽聽聽 system("PAUSE");聽<br />聽聽聽 return 0;<br />}</font> </p> </pre> </td> </tr> </tbody> </table> </ccid_nobr> <br /> </p> <p>聽聽聽璇鋒敞鎰忔垜浠病鏈変嬌鐢ㄤ竴涓畝媧佺殑cast鎿嶄綔鎴栦竴涓ā寮忔爣蹇楁潵瀹炵幇stringstream杞崲銆傛搷浣滅<<鍜?gt;>浼氳嚜鍔ㄥ湴鍒犻櫎鍘熷鏁版嵁鐨勭被鍨嬪拰鐩爣鏁版嵁錛屽茍鑷姩鑰屽畨鍏ㄥ湴鎵ц闇瑕佺殑杞崲銆?/p> <p> <sstream>搴撲笉浼氬彧闄愪簬涓浜涢珮姘村鉤鐨勬搷浣滐紝姣斿std::string銆備綘鍙互寰堟柟渚垮湴瀹炵幇涓涓猚har *鍙橀噺涔嬮棿鐨勮漿鎹細</sstream> </p> <p> </p> <table cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="400" align="center" bordercolorlight="black" border="1"> <tbody> <tr> <td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"> <pre> <ccid_code>//紼嬪簭鍚嶏細teststream2.cpp //鍔熻兘錛氬皢int綾誨瀷鏁版嵁閫氳繃stringstream瀵硅薄杞垚char[] 錛僫 nclude <iostream> <iostream><br />錛僫 nclude <stdlib.h> <stdlib.h>聽聽聽// system()<br />錛僫 nclude <string><string><br />錛僫 nclude <sstream><sstream><br />using namespace std;</sstream></string></stdlib.h></iostream></ccid_code> </pre> <pre> <p> <font face="Courier New">int main(int argc, char *argv[])<br />{<br />聽聽聽 std::stringstream stream;<br />聽聽聽 char result[12] = {'\0'};<br />聽聽聽 stream << 1234;聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 //insert int to stream<br />聽聽聽 stream >> result;聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 //extract previously inserted value<br />聽聽聽 cout << result << endl;聽聽聽聽聽聽聽聽聽聽聽聽 // print "1234"聽聽聽聽聽聽聽聽聽聽聽聽 <br />聽聽聽 <br />聽聽聽 system("PAUSE");聽<br />聽聽聽 return 0;<br />}</font> </p> </pre> </td> </tr> </tbody> </table> <p>聽聽聽濡傛灉浣犳兂閫氳繃浣跨敤鍚屼竴stringstream瀵硅薄瀹炵幇澶氱綾誨瀷鐨勮漿鎹紝璇鋒敞鎰忓湪姣忎竴嬈¤漿鎹箣鍚庨兘蹇呴』璋冪敤<i>clear()</i>鎴愬憳鍑芥暟錛屼緥濡傦細</p> <p> </p> <table style="WIDTH: 552px; HEIGHT: 378px" cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="552" align="center" bordercolorlight="black" border="1"> <tbody> <tr> <td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"> <pre> <ccid_code>//紼嬪簭鍚嶏細teststream3.cpp //鍔熻兘錛氫嬌鐢ㄥ悓涓stringstream瀵硅薄瀹炵幇澶氱綾誨瀷鐨勮漿鎹?錛僫 nclude <iostream> <iostream><br />錛僫 nclude <stdlib.h> <stdlib.h>聽聽聽// system()<br />錛僫 nclude <string><string><br />錛僫 nclude <sstream><br />using namespace std;</string></stdlib.h></iostream></ccid_code> </pre> <pre> <p> <font face="Courier New">int main(int argc, char *argv[])<br />{<br />聽聽聽 std::stringstream stream;<br />聽聽聽 int n, m;<br />聽聽聽 stream<< "456"; 聽聽聽聽聽聽//insert string<br />聽聽聽 stream >> n; 聽聽聽聽聽聽聽聽聽//extract to int<br />聽聽聽 stream.clear(); 聽聽聽聽聽聽//reset stream before another conversion<br />聽聽聽 stream<< true; 聽聽聽聽聽聽聽//insert bool value<br />聽聽聽 stream >> m; 聽聽聽聽聽聽聽聽聽//extract to int</font> </p> <p> <font face="Courier New">聽聽聽 cout << "n:\t" << n << endl;聽聽聽 //print 456<br />聽聽聽 cout << "m:\t" << m << endl;聽聽聽 //print 1聽 聽聽聽聽聽聽聽聽聽聽 <br />聽聽聽 <br />聽聽聽 system("PAUSE");聽<br />聽聽聽 return 0;<br />}</font> </p> </pre> </td> </tr> </tbody> </table> <p>聽聽聽浜嬪疄涓婏紝stream瀵硅薄鍙互鎺ユ敹澶氱綾誨瀷杈撳叆鐨勭壒鐐圭粰鎴戜滑甯︽潵涓涓ソ澶勶紝鍙互灝唅nt錛宑har*絳変笉鍚岀被鍨嬬殑杈撳叆鍚屾椂瀵煎叆鍒頒竴涓猻tream瀵硅薄錛屽啀閫氳繃璇tream瀵硅薄瀵煎嚭涓涓柊鍊箋?/p> <p> </p> <table style="WIDTH: 705px; HEIGHT: 408px" cellspacing="0" bordercolordark="#ffffff" cellpadding="2" width="705" align="center" bordercolorlight="black" border="1"> <tbody> <tr> <td class="code" style="FONT-SIZE: 9pt" bgcolor="#e6e6e6"> <pre> <ccid_code>//紼嬪簭鍚嶏細teststream4.cpp //鍔熻兘錛氬皢int綾誨瀷鏁版嵁鍜宑har*鏁版嵁閫氳繃stringstream瀵硅薄杞垚char[] <br />錛僫 nclude <iostream> <iostream><br />錛僫 nclude <stdlib.h> <stdlib.h>聽聽聽// system()<br />錛僫 nclude <string><string><br />錛僫 nclude <sstream><br />using namespace std;</string></stdlib.h></iostream></ccid_code> </pre> <pre> <p> <font face="Courier New">int main(int argc, char *argv[])<br />{<br />聽聽聽 std::stringstream stream;<br />聽聽聽 char ip[16];<br />聽聽聽 stream << 218; //insert int<br />聽聽聽 stream << "."; //insert string<br />聽聽聽 stream << 192; //insert int<br />聽聽聽 stream << "."; //insert string<br />聽聽聽 stream << 160; //insert int<br />聽聽聽 stream << "."; //insert string<br />聽聽聽 stream << 228; //insert int<br />聽聽聽 <br />聽聽聽 stream >> ip;</font> </p> <p> <font face="Courier New">聽聽聽 cout << "ip:\t" << ip << endl;聽聽聽 //print " 218.192.160.228" 聽聽聽 <br />聽聽聽 system("PAUSE");聽<br />聽聽聽 return 0;<br /></font> </p> </pre> </td> </tr> </tbody> </table> <img src ="http://m.shnenglu.com/true/aggbug/20884.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-03-29 16:25 <a href="http://m.shnenglu.com/true/archive/2007/03/29/20884.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C錛嬶紜杈撳嚭16榪涘埗錛?/title><link>http://m.shnenglu.com/true/archive/2007/03/19/20151.html</link><dc:creator>true</dc:creator><author>true</author><pubDate>Mon, 19 Mar 2007 09:56:00 GMT</pubDate><guid>http://m.shnenglu.com/true/archive/2007/03/19/20151.html</guid><wfw:comment>http://m.shnenglu.com/true/comments/20151.html</wfw:comment><comments>http://m.shnenglu.com/true/archive/2007/03/19/20151.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/true/comments/commentRss/20151.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/true/services/trackbacks/20151.html</trackback:ping><description><![CDATA[ <div twffan="done">std::cout << "0x" << std::hex << 255 << std::endl;<br />杈撳嚭聽 0xff錛?/div> <img src ="http://m.shnenglu.com/true/aggbug/20151.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/true/" target="_blank">true</a> 2007-03-19 17:56 <a href="http://m.shnenglu.com/true/archive/2007/03/19/20151.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <a href="http://m.shnenglu.com/">青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品</a> <div style="position:fixed;left:-9000px;top:-9000px;"><font id="pjuwb"></font><button id="pjuwb"><pre id="pjuwb"></pre></button><sub id="pjuwb"></sub><tbody id="pjuwb"><var id="pjuwb"><address id="pjuwb"></address></var></tbody><listing id="pjuwb"><label id="pjuwb"><strong id="pjuwb"></strong></label></listing><wbr id="pjuwb"><small id="pjuwb"><tbody id="pjuwb"></tbody></small></wbr><ins id="pjuwb"><xmp id="pjuwb"></xmp></ins><style id="pjuwb"></style><label id="pjuwb"><em id="pjuwb"><li id="pjuwb"></li></em></label><samp id="pjuwb"></samp><menu id="pjuwb"><input id="pjuwb"></input></menu><pre id="pjuwb"><tbody id="pjuwb"><tfoot id="pjuwb"><button id="pjuwb"></button></tfoot></tbody></pre><form id="pjuwb"></form><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"><sup id="pjuwb"></sup></label></style></i><li id="pjuwb"><table id="pjuwb"><abbr id="pjuwb"></abbr></table></li><video id="pjuwb"></video><dfn id="pjuwb"></dfn><progress id="pjuwb"></progress><strong id="pjuwb"></strong><mark id="pjuwb"></mark><em id="pjuwb"></em><tbody id="pjuwb"><p id="pjuwb"><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike></p></tbody><option id="pjuwb"></option><strike id="pjuwb"></strike><u id="pjuwb"></u><td id="pjuwb"><center id="pjuwb"><tr id="pjuwb"></tr></center></td><em id="pjuwb"><mark id="pjuwb"><em id="pjuwb"><tt id="pjuwb"></tt></em></mark></em><strong id="pjuwb"></strong><wbr id="pjuwb"></wbr><s id="pjuwb"></s><strong id="pjuwb"></strong><legend id="pjuwb"></legend><nav id="pjuwb"></nav><dl id="pjuwb"><th id="pjuwb"><dl id="pjuwb"></dl></th></dl><noframes id="pjuwb"><ins id="pjuwb"></ins></noframes><font id="pjuwb"></font><strike id="pjuwb"><i id="pjuwb"><style id="pjuwb"><label id="pjuwb"></label></style></i></strike><output id="pjuwb"></output><thead id="pjuwb"><pre id="pjuwb"></pre></thead><source id="pjuwb"></source><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem><pre id="pjuwb"><span id="pjuwb"><pre id="pjuwb"><big id="pjuwb"></big></pre></span></pre><cite id="pjuwb"><fieldset id="pjuwb"><s id="pjuwb"><rt id="pjuwb"></rt></s></fieldset></cite><big id="pjuwb"><progress id="pjuwb"><big id="pjuwb"></big></progress></big><samp id="pjuwb"><delect id="pjuwb"></delect></samp><dl id="pjuwb"></dl><strike id="pjuwb"><nav id="pjuwb"><dl id="pjuwb"><strong id="pjuwb"></strong></dl></nav></strike><tbody id="pjuwb"><b id="pjuwb"><optgroup id="pjuwb"><rp id="pjuwb"></rp></optgroup></b></tbody><em id="pjuwb"></em><xmp id="pjuwb"><blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote></xmp> <i id="pjuwb"><abbr id="pjuwb"><i id="pjuwb"><abbr id="pjuwb"></abbr></i></abbr></i><center id="pjuwb"><acronym id="pjuwb"><center id="pjuwb"></center></acronym></center><pre id="pjuwb"></pre><ul id="pjuwb"><thead id="pjuwb"></thead></ul><blockquote id="pjuwb"><pre id="pjuwb"><sup id="pjuwb"></sup></pre></blockquote><acronym id="pjuwb"></acronym><big id="pjuwb"><s id="pjuwb"></s></big><th id="pjuwb"></th><th id="pjuwb"></th><tbody id="pjuwb"></tbody><thead id="pjuwb"><strike id="pjuwb"></strike></thead><th id="pjuwb"><dl id="pjuwb"><wbr id="pjuwb"></wbr></dl></th><dl id="pjuwb"><strong id="pjuwb"></strong></dl><abbr id="pjuwb"><noframes id="pjuwb"><noscript id="pjuwb"></noscript></noframes></abbr><td id="pjuwb"><ol id="pjuwb"></ol></td><li id="pjuwb"><noscript id="pjuwb"><abbr id="pjuwb"></abbr></noscript></li><small id="pjuwb"><bdo id="pjuwb"><nav id="pjuwb"></nav></bdo></small><style id="pjuwb"></style><optgroup id="pjuwb"><table id="pjuwb"></table></optgroup><center id="pjuwb"><tr id="pjuwb"><dfn id="pjuwb"></dfn></tr></center><th id="pjuwb"></th><u id="pjuwb"></u><tfoot id="pjuwb"><legend id="pjuwb"><i id="pjuwb"></i></legend></tfoot><mark id="pjuwb"></mark><meter id="pjuwb"></meter><nav id="pjuwb"></nav><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><acronym id="pjuwb"><pre id="pjuwb"><acronym id="pjuwb"><ul id="pjuwb"></ul></acronym></pre></acronym><nobr id="pjuwb"></nobr><sub id="pjuwb"><th id="pjuwb"><menuitem id="pjuwb"><wbr id="pjuwb"></wbr></menuitem></th></sub><thead id="pjuwb"><sub id="pjuwb"></sub></thead><ul id="pjuwb"><address id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></address></ul><dfn id="pjuwb"></dfn><pre id="pjuwb"></pre><input id="pjuwb"><cite id="pjuwb"><fieldset id="pjuwb"></fieldset></cite></input><u id="pjuwb"><form id="pjuwb"><u id="pjuwb"></u></form></u><kbd id="pjuwb"><em id="pjuwb"><mark id="pjuwb"></mark></em></kbd><tr id="pjuwb"></tr><del id="pjuwb"><form id="pjuwb"><address id="pjuwb"></address></form></del><tfoot id="pjuwb"><legend id="pjuwb"><ol id="pjuwb"><dl id="pjuwb"></dl></ol></legend></tfoot><menu id="pjuwb"><nobr id="pjuwb"><th id="pjuwb"><nobr id="pjuwb"></nobr></th></nobr></menu><fieldset id="pjuwb"></fieldset><pre id="pjuwb"><blockquote id="pjuwb"><samp id="pjuwb"></samp></blockquote></pre><xmp id="pjuwb"><sup id="pjuwb"><pre id="pjuwb"></pre></sup></xmp><span id="pjuwb"><progress id="pjuwb"></progress></span><font id="pjuwb"></font><var id="pjuwb"><abbr id="pjuwb"></abbr></var><strong id="pjuwb"><label id="pjuwb"><i id="pjuwb"><legend id="pjuwb"></legend></i></label></strong><tr id="pjuwb"><em id="pjuwb"><em id="pjuwb"><output id="pjuwb"></output></em></em></tr><thead id="pjuwb"><strike id="pjuwb"></strike></thead> <acronym id="pjuwb"></acronym><i id="pjuwb"></i><tt id="pjuwb"></tt><rt id="pjuwb"><source id="pjuwb"><rt id="pjuwb"></rt></source></rt><strike id="pjuwb"><acronym id="pjuwb"></acronym></strike><del id="pjuwb"></del><font id="pjuwb"><output id="pjuwb"><ins id="pjuwb"><output id="pjuwb"></output></ins></output></font><kbd id="pjuwb"><tr id="pjuwb"><kbd id="pjuwb"></kbd></tr></kbd><pre id="pjuwb"><sup id="pjuwb"><delect id="pjuwb"><samp id="pjuwb"></samp></delect></sup></pre><samp id="pjuwb"></samp><track id="pjuwb"></track><tr id="pjuwb"></tr><center id="pjuwb"></center><fieldset id="pjuwb"></fieldset><i id="pjuwb"></i><td id="pjuwb"></td><rt id="pjuwb"></rt><object id="pjuwb"></object><pre id="pjuwb"><progress id="pjuwb"><sub id="pjuwb"><thead id="pjuwb"></thead></sub></progress></pre><kbd id="pjuwb"><tr id="pjuwb"><option id="pjuwb"></option></tr></kbd><output id="pjuwb"><ins id="pjuwb"></ins></output><ol id="pjuwb"></ol><source id="pjuwb"></source><strong id="pjuwb"></strong><ruby id="pjuwb"></ruby><sub id="pjuwb"><meter id="pjuwb"><menuitem id="pjuwb"><meter id="pjuwb"></meter></menuitem></meter></sub><pre id="pjuwb"></pre><center id="pjuwb"></center><tr id="pjuwb"><tbody id="pjuwb"><xmp id="pjuwb"><dd id="pjuwb"></dd></xmp></tbody></tr><video id="pjuwb"></video><pre id="pjuwb"></pre><form id="pjuwb"><optgroup id="pjuwb"></optgroup></form><samp id="pjuwb"></samp><kbd id="pjuwb"></kbd><strong id="pjuwb"><option id="pjuwb"></option></strong><object id="pjuwb"></object><abbr id="pjuwb"><noframes id="pjuwb"><abbr id="pjuwb"></abbr></noframes></abbr><ul id="pjuwb"><del id="pjuwb"><button id="pjuwb"><pre id="pjuwb"></pre></button></del></ul><abbr id="pjuwb"></abbr><strong id="pjuwb"><code id="pjuwb"><strong id="pjuwb"></strong></code></strong><option id="pjuwb"></option><optgroup id="pjuwb"><bdo id="pjuwb"><code id="pjuwb"></code></bdo></optgroup><mark id="pjuwb"><em id="pjuwb"><font id="pjuwb"></font></em></mark><acronym id="pjuwb"><code id="pjuwb"></code></acronym><dl id="pjuwb"></dl><em id="pjuwb"></em><object id="pjuwb"><input id="pjuwb"><object id="pjuwb"></object></input></object><output id="pjuwb"><dd id="pjuwb"></dd></output><option id="pjuwb"><button id="pjuwb"><option id="pjuwb"></option></button></option><small id="pjuwb"></small></div> <a href="http://7213523.com" target="_blank">亚洲一区二区三区精品在线观看 </a>| <a href="http://www-23918.com" target="_blank">欧美日韩午夜视频在线观看</a>| <a href="http://5773000.com" target="_blank">久久电影一区</a>| <a href="http://mom8888.com" target="_blank">欧美一区二区精美</a>| <a href="http://www-11688.com" target="_blank">久久男人资源视频</a>| <a href="http://shruhan.com" target="_blank">欧美精品一卡</a>| <a href="http://507139.com" target="_blank">国产精品国产三级欧美二区</a>| <a href="http://www224558.com" target="_blank">国产精品国产成人国产三级</a>| <a href="http://a718sx.com" target="_blank">国产伦精品一区二区三区免费迷</a>| <a href="http://www-kj8777.com" target="_blank">国产欧美一区二区三区在线看蜜臀 </a>| <a href="http://ww9494.com" target="_blank">日韩一二三在线视频播</a>| <a href="http://66gg6.com" target="_blank">一本综合久久</a>| <a href="http://bosengame.com" target="_blank">欧美在线关看</a>| <a href="http://www33779.com" target="_blank">欧美第一黄网免费网站</a>| <a href="http://25axxa.com" target="_blank">99亚洲伊人久久精品影院红桃</a>| <a href="http://8410555.com" target="_blank">在线亚洲精品</a>| <a href="http://844985.com" target="_blank">久久精品男女</a>| <a href="http://05511253.com" target="_blank">欧美日韩黄色大片</a>| <a href="http://ad377.com" target="_blank">国产午夜精品视频免费不卡69堂</a>| <a href="http://wwwp6660.com" target="_blank">在线播放亚洲一区</a>| <a href="http://569688.com" target="_blank">亚洲一品av免费观看</a>| <a href="http://zhengnuoxin.com" target="_blank">久久精品视频va</a>| <a href="http://04oy.com" target="_blank">亚洲国产高清高潮精品美女</a>| <a href="http://my736.com" target="_blank">亚洲国产裸拍裸体视频在线观看乱了中文 </a>| <a href="http://www47777.com" target="_blank">欧美高清成人</a>| <a href="http://788997.com" target="_blank">国产精品日韩欧美大师</a>| <a href="http://wwwok1965.com" target="_blank">影音先锋日韩有码</a>| <a href="http://22127c.com" target="_blank">亚洲午夜激情网页</a>| <a href="http://www-76577c.com" target="_blank">免费不卡在线视频</a>| <a href="http://jkllkg.com" target="_blank">亚洲免费在线视频一区 二区</a>| <a href="http://www-663345.com" target="_blank">看欧美日韩国产</a>| <a href="http://jpqueyou.com" target="_blank">国产精品亚洲综合天堂夜夜</a>| <a href="http://710195.com" target="_blank">亚洲国产成人在线</a>| <a href="http://xxxxxdywvip18.com" target="_blank">亚洲一区免费网站</a>| <a href="http://yimeimc.com" target="_blank">欧美激情一区二区</a>| <a href="http://4986888.com" target="_blank">欧美一二区视频</a>| <a href="http://caobenfan1891.com" target="_blank">国产精品成人观看视频免费</a>| <a href="http://qimao360.com" target="_blank">亚洲人成在线播放</a>| <a href="http://zjjieda.com" target="_blank">久久裸体艺术</a>| <a href="http://6868681.com" target="_blank">亚洲欧美一区二区视频</a>| <a href="http://hmm47.com" target="_blank">欧美日本中文字幕</a>| <a href="http://www344399.com" target="_blank">亚洲国产成人porn</a>| <a href="http://czhqwy.com" target="_blank">久久午夜激情</a>| <a href="http://278538.com" target="_blank">久久在线观看视频</a>| <a href="http://05ec.com" target="_blank">久久成人在线</a>| <a href="http://e789a.com" target="_blank">国产欧美日韩一级</a>| <a href="http://556995.com" target="_blank">亚洲天堂视频在线观看</a>| <a href="http://xhamtube.com" target="_blank">欧美电影在线观看完整版</a>| <a href="http://3wbb.com" target="_blank">欧美一级久久久久久久大片</a>| <a href="http://710191.com" target="_blank">欧美性色综合</a>| <a href="http://kgg93.com" target="_blank">艳妇臀荡乳欲伦亚洲一区</a>| <a href="http://133255.com" target="_blank">美女诱惑黄网站一区</a>| <a href="http://8004006.com" target="_blank">欧美亚洲在线观看</a>| <a href="http://www033459.com" target="_blank">国产农村妇女精品一二区</a>| <a href="http://66hhmm.com" target="_blank">一区二区欧美亚洲</a>| <a href="http://ahhyez.com" target="_blank">亚洲精品小视频</a>| <a href="http://hhsp13.com" target="_blank">欧美精品一区二区三区蜜桃 </a>| <a href="http://pppp95.com" target="_blank">欧美久久久久久</a>| <a href="http://gykfqzgpt.com" target="_blank">亚洲高清在线视频</a>| <a href="http://107766a.com" target="_blank">欧美黄免费看</a>| <a href="http://yy306.com" target="_blank">欧美电影在线观看完整版</a>| <a href="http://hczztj.com" target="_blank">亚洲国产欧美在线</a>| <a href="http://yahuake.com" target="_blank">亚洲成人在线视频播放 </a>| <a href="http://szxrdr.com" target="_blank">久久激情视频</a>| <a href="http://seo8138.com" target="_blank">国产字幕视频一区二区</a>| <a href="http://chukewang.com" target="_blank">久久性天堂网</a>| <a href="http://www-36900.com" target="_blank">久久久久欧美精品</a>| <a href="http://papala4444.com" target="_blank">亚洲福利小视频</a>| <a href="http://www-ss777.com" target="_blank">欧美激情亚洲另类</a>| <a href="http://770456.com" target="_blank">欧美精品成人在线</a>| <a href="http://xingzhiyin85.com" target="_blank">宅男噜噜噜66国产日韩在线观看</a>| <a href="http://193youwu.com" target="_blank">亚洲精品免费在线</a>| <a href="http://2456yo.com" target="_blank">欧美午夜电影在线</a>| <a href="http://exsecular.com" target="_blank">欧美一区二区成人</a>| <a href="http://xyyssa.com" target="_blank">久久久99免费视频</a>| <a href="http://737sihu.com" target="_blank">91久久精品国产91久久性色tv</a>| <a href="http://zd-jm.com" target="_blank">亚洲高清中文字幕</a>| <a href="http://www23009.com" target="_blank">欧美日韩一卡二卡</a>| <a href="http://567acg.com" target="_blank">久久本道综合色狠狠五月</a>| <a href="http://baoyu1313.com" target="_blank">久久国产精品第一页</a>| <a href="http://789583.com" target="_blank">亚洲国产一区二区三区a毛片</a>| <a href="http://aqd072.com" target="_blank">亚洲二区视频在线</a>| <a href="http://xingcheny.com" target="_blank">欧美日韩综合在线</a>| <a href="http://73cao.com" target="_blank">久久精品九九</a>| <a href="http://17ccem.com" target="_blank">美女亚洲精品</a>| <a href="http://342889.com" target="_blank">亚洲欧美另类在线</a>| <a href="http://wwwqm9.com" target="_blank">久久精品人人做人人综合</a>| <a href="http://gyzhoucheng.com" target="_blank">亚洲黄色av一区</a>| <a href="http://yw3328.com" target="_blank">性欧美1819性猛交</a>| <a href="http://cscjxs.com" target="_blank">久久久精品一品道一区</a>| <a href="http://wwzz3.com" target="_blank">亚洲免费激情</a>| <a href="http://605799.com" target="_blank">亚洲欧洲av一区二区</a>| <a href="http://710952.com" target="_blank">免费av成人在线</a>| <a href="http://budanbao.com" target="_blank">亚洲欧美另类综合偷拍</a>| <a href="http://483134.com" target="_blank">亚洲黑丝一区二区</a>| <a href="http://8410555.com" target="_blank">欧美亚日韩国产aⅴ精品中极品</a>| <a href="http://91x8.com" target="_blank">亚洲欧美日韩综合</a>| <a href="http://482b.com" target="_blank">久久午夜av</a>| <a href="http://cmtqd.com" target="_blank">亚洲影院免费观看</a>| <a href="http://155fck.com" target="_blank">久久午夜电影网</a>| <a href="http://977mo.com" target="_blank">亚洲女与黑人做爰</a>| <a href="http://414670.com" target="_blank">美女日韩欧美</a>| <a href="http://cechi8.com" target="_blank">性欧美18~19sex高清播放</a>| <a href="http://56x6.com" target="_blank">麻豆成人av</a>| <a href="http://wwwen41.com" target="_blank">久久精品一区</a>| <a href="http://hsxinbao.com" target="_blank">国产精品草莓在线免费观看</a>| <a href="http://gg5gg.com" target="_blank">蜜臀va亚洲va欧美va天堂</a>| <a href="http://4399360.com" target="_blank">欧美视频一区二区三区…</a>| <a href="http://118626cc.com" target="_blank">蜜臀久久99精品久久久画质超高清</a>| <a href="http://maoshimh.com" target="_blank">欧美日韩国产三级</a>| <a href="http://345fz.com" target="_blank">欧美jizzhd精品欧美巨大免费</a>| <a href="http://3333577.com" target="_blank">欧美午夜影院</a>| <a href="http://www18bbav.com" target="_blank">亚洲激情视频在线</a>| <a href="http://51-express.com" target="_blank">激情欧美一区二区三区在线观看</a>| <a href="http://598327.com" target="_blank">一区二区三区四区国产</a>| <a href="http://www3344uh.com" target="_blank">亚洲人成在线观看</a>| <a href="http://gzhachi.com" target="_blank">久久先锋影音</a>| <a href="http://yashikeji.com" target="_blank">久久深夜福利</a>| <a href="http://dsbangx.com" target="_blank">国产视频在线观看一区二区三区</a>| <a href="http://http456446.com" target="_blank">91久久久一线二线三线品牌</a>| <a href="http://syntheticnets.com" target="_blank">狠狠久久五月精品中文字幕</a>| <a href="http://4449998.com" target="_blank">亚洲一区高清</a>| <a href="http://583775.com" target="_blank">亚洲免费网址</a>| <a href="http://gzw33.com" target="_blank">欧美午夜精品久久久久免费视</a>| <a href="http://77mcn.com" target="_blank">亚洲欧洲在线一区</a>| <a href="http://85995m.com" target="_blank">亚洲精品视频啊美女在线直播</a>| <a href="http://2jjzz.com" target="_blank">久久久久久亚洲综合影院红桃</a>| <a href="http://yy6024.com" target="_blank">久久久91精品国产一区二区三区</a>| <a href="http://0934photo.com" target="_blank">国产精品久久久亚洲一区</a>| <a href="http://bbbbyb.com" target="_blank">夜夜嗨av一区二区三区</a>| <a href="http://wawabt.com" target="_blank">99精品欧美一区</a>| <a href="http://060969.com" target="_blank">欧美日韩国产a</a>| <a href="http://ayxchc.com" target="_blank">日韩亚洲国产欧美</a>| <a href="http://3333577.com" target="_blank">亚洲视屏在线播放</a>| <a href="http://wwwwy9001.com" target="_blank">欧美午夜美女看片</a>| <a href="http://taoh228.com" target="_blank">亚洲视频综合在线</a>| <a href="http://www101804.com" target="_blank">欧美影视一区</a>| <a href="http://080177.com" target="_blank">国产一区久久</a>| <a href="http://5gn4y.com" target="_blank">久久爱91午夜羞羞</a>| <a href="http://246767.com" target="_blank">老牛国产精品一区的观看方式</a>| <a href="http://nxyhbz.com" target="_blank">国产亚洲一区在线</a>| <a href="http://tingxihuan.com" target="_blank">久久精品国产免费</a>| <a href="http://seanzhau.com" target="_blank">欧美成人免费一级人片100</a>| <a href="http://333666333.com" target="_blank">伊人成年综合电影网</a>| <a href="http://cp50088.com" target="_blank">久久综合伊人</a>| <a href="http://hwgjcm.com" target="_blank">最新中文字幕一区二区三区</a>| <a href="http://372469.com" target="_blank">亚洲理论在线观看</a>| <a href="http://szbeikai.com" target="_blank">欧美日韩高清免费</a>| <a href="http://hzhzzz.com" target="_blank">亚洲一区3d动漫同人无遮挡</a>| <a href="http://instantptt.com" target="_blank">亚洲欧美综合国产精品一区</a>| <a href="http://6133c.com" target="_blank">国产精品一区二区久久久久</a>| <a href="http://sxhrdyb.com" target="_blank">性18欧美另类</a>| <a href="http://8x1080x.com" target="_blank">欧美岛国激情</a>| <a href="http://xiphosoft.com" target="_blank">亚洲香蕉网站</a>| <a href="http://118017.com" target="_blank">国产日本欧美一区二区</a>| <a href="http://dy123456.com" target="_blank">久久久www成人免费毛片麻豆</a>| <a href="http://wzsl8.com" target="_blank">欧美成人免费网站</a>| <a href="http://www-ss777.com" target="_blank">亚洲最新视频在线</a>| <a href="http://instantptt.com" target="_blank">欧美成人激情在线</a>| <a href="http://www13256.com" target="_blank">91久久在线视频</a>| <a href="http://521mu.com" target="_blank">欧美亚洲专区</a>| <a href="http://jjy891.com" target="_blank">欧美国产先锋</a>| <a href="http://yckjwb.com" target="_blank">亚洲午夜伦理</a>| <a href="http://www1122fu.com" target="_blank">国产一区视频在线看</a>| <a href="http://mauhorng.com" target="_blank">老司机一区二区三区</a>| <a href="http://548710.com" target="_blank">亚洲精品乱码久久久久久按摩观</a>| <a href="http://by27333.com" target="_blank">亚洲一区二区三区免费观看</a>| <a href="http://china-cvct.com" target="_blank">国产亚洲欧美一区二区</a>| <a href="http://www7495.com" target="_blank">你懂的网址国产 欧美</a>| <a href="http://www23009.com" target="_blank">一区二区三区国产精华</a>| <a href="http://lovehefei.com" target="_blank">久久欧美肥婆一二区</a>| <a href="http://3838418.com" target="_blank">亚洲精品黄色</a>| <a href="http://www-438686.com" target="_blank">国产精品日韩在线播放</a>| <a href="http://www3344uh.com" target="_blank">久久综合九色欧美综合狠狠</a>| <a href="http://9924338.com" target="_blank">日韩一区二区精品</a>| <a href="http://aqdav037.com" target="_blank">美女在线一区二区</a>| <a href="http://236664.com" target="_blank">亚洲影院污污.</a>| <a href="http://136066.com" target="_blank">亚洲黄色av一区</a>| <a href="http://www-44442.com" target="_blank">国产美女扒开尿口久久久</a>| <a href="http://by4433.com" target="_blank">欧美成人亚洲</a>| <a href="http://topjavhd.com" target="_blank">久久精品国产成人</a>| <a href="http://65kf.com" target="_blank">中文在线一区</a>| <a href="http://www-13978.com" target="_blank">亚洲激情在线</a>| <a href="http://tzhsdy.com" target="_blank">久久久水蜜桃</a>| <a href="http://kk553.com" target="_blank">午夜日韩av</a>| <a href="http://baixinlocal.com" target="_blank">99日韩精品</a>| <a href="http://fuqiba.com" target="_blank">亚洲国产美女</a>| <a href="http://082235.com" target="_blank">国产日韩精品在线播放</a>| <a href="http://2jjzz.com" target="_blank">欧美色区777第一页</a>| <a href="http://422608.com" target="_blank">蜜桃av久久久亚洲精品</a>| <a href="http://caca060.com" target="_blank">午夜综合激情</a>| <a href="http://gg5gg.com" target="_blank">亚洲尤物在线</a>| <a href="http://oo853kj.com" target="_blank">一区二区三区回区在观看免费视频</a>| <a href="http://wwwhaodd116.com" target="_blank">老鸭窝亚洲一区二区三区</a>| <a href="http://shalitao.com" target="_blank">午夜一区二区三区不卡视频</a>| <a href="http://wanzhixue.com" target="_blank">日韩午夜电影在线观看</a>| <a href="http://actinview.com" target="_blank">在线欧美视频</a>| <a href="http://nxyhbz.com" target="_blank">精久久久久久久久久久</a>| <a href="http://yymh1056.com" target="_blank">国产日韩欧美另类</a>| <a href="http://36seaa.com" target="_blank">国产精品男gay被猛男狂揉视频</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>