﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-workspace-随笔分类-C/C++</title><link>http://www.blogjava.net/babymouse/category/35790.html</link><description>努力奋斗——I believe I can fly</description><language>zh-cn</language><lastBuildDate>Thu, 06 Nov 2008 15:46:48 GMT</lastBuildDate><pubDate>Thu, 06 Nov 2008 15:46:48 GMT</pubDate><ttl>60</ttl><item><title>Vector当做引用在在函数中传递</title><link>http://www.blogjava.net/babymouse/archive/2008/10/10/233536.html</link><dc:creator>Robert Su</dc:creator><author>Robert Su</author><pubDate>Fri, 10 Oct 2008 03:10:00 GMT</pubDate><guid>http://www.blogjava.net/babymouse/archive/2008/10/10/233536.html</guid><wfw:comment>http://www.blogjava.net/babymouse/comments/233536.html</wfw:comment><comments>http://www.blogjava.net/babymouse/archive/2008/10/10/233536.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/babymouse/comments/commentRss/233536.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/babymouse/services/trackbacks/233536.html</trackback:ping><description><![CDATA[<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">#include&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">stdafx.h</span><span style="color: #000000">"</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">vector</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;vect(vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&amp;</span><span style="color: #000000">ve)&nbsp;&nbsp;&nbsp;<br />
<img id="Codehighlighter1_123_160_Open_Image" onclick="this.style.display='none'; Codehighlighter1_123_160_Open_Text.style.display='none'; Codehighlighter1_123_160_Closed_Image.style.display='inline'; Codehighlighter1_123_160_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_123_160_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_123_160_Closed_Text.style.display='none'; Codehighlighter1_123_160_Open_Image.style.display='inline'; Codehighlighter1_123_160_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span id="Codehighlighter1_123_160_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_123_160_Open_Text"><span style="color: #000000">{&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ve.push_back(</span><span style="color: #000000">100</span><span style="color: #000000">);&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;main()&nbsp;&nbsp;&nbsp;<br />
<img id="Codehighlighter1_187_346_Open_Image" onclick="this.style.display='none'; Codehighlighter1_187_346_Open_Text.style.display='none'; Codehighlighter1_187_346_Closed_Image.style.display='inline'; Codehighlighter1_187_346_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_187_346_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_187_346_Closed_Text.style.display='none'; Codehighlighter1_187_346_Open_Image.style.display='inline'; Codehighlighter1_187_346_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span id="Codehighlighter1_187_346_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_187_346_Open_Text"><span style="color: #000000">{&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;v;&nbsp;&nbsp;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vect(v);<br />
<img id="Codehighlighter1_306_329_Open_Image" onclick="this.style.display='none'; Codehighlighter1_306_329_Open_Text.style.display='none'; Codehighlighter1_306_329_Closed_Image.style.display='inline'; Codehighlighter1_306_329_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_306_329_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_306_329_Closed_Text.style.display='none'; Codehighlighter1_306_329_Open_Image.style.display='inline'; Codehighlighter1_306_329_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">::iterator&nbsp;it&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;v.begin();it&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;v.end();</span><span style="color: #000000">++</span><span style="color: #000000">it)</span><span id="Codehighlighter1_306_329_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_306_329_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">it</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cin.</span><span style="color: #0000ff">get</span><span style="color: #000000">();<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span></div>
 <img src ="http://www.blogjava.net/babymouse/aggbug/233536.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/babymouse/" target="_blank">Robert Su</a> 2008-10-10 11:10 <a href="http://www.blogjava.net/babymouse/archive/2008/10/10/233536.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用vector打印九九乘法表</title><link>http://www.blogjava.net/babymouse/archive/2008/10/08/233152.html</link><dc:creator>Robert Su</dc:creator><author>Robert Su</author><pubDate>Wed, 08 Oct 2008 07:34:00 GMT</pubDate><guid>http://www.blogjava.net/babymouse/archive/2008/10/08/233152.html</guid><wfw:comment>http://www.blogjava.net/babymouse/comments/233152.html</wfw:comment><comments>http://www.blogjava.net/babymouse/archive/2008/10/08/233152.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/babymouse/comments/commentRss/233152.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/babymouse/services/trackbacks/233152.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><span style="color: #000000">#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" />#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">vector</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top"  alt="" /></span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;&nbsp;<br />
<img id="Codehighlighter1_73_381_Open_Image" onclick="this.style.display='none'; Codehighlighter1_73_381_Open_Text.style.display='none'; Codehighlighter1_73_381_Closed_Image.style.display='inline'; Codehighlighter1_73_381_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_73_381_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_73_381_Closed_Text.style.display='none'; Codehighlighter1_73_381_Open_Image.style.display='inline'; Codehighlighter1_73_381_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main()</span><span id="Codehighlighter1_73_381_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_73_381_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img id="Codehighlighter1_87_105_Open_Image" onclick="this.style.display='none'; Codehighlighter1_87_105_Open_Text.style.display='none'; Codehighlighter1_87_105_Closed_Image.style.display='inline'; Codehighlighter1_87_105_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_87_105_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_87_105_Closed_Text.style.display='none'; Codehighlighter1_87_105_Open_Image.style.display='inline'; Codehighlighter1_87_105_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;ia[]&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span id="Codehighlighter1_87_105_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_87_105_Open_Text"><span style="color: #000000">{</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">2</span><span style="color: #000000">,</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">4</span><span style="color: #000000">,</span><span style="color: #000000">5</span><span style="color: #000000">,</span><span style="color: #000000">6</span><span style="color: #000000">,</span><span style="color: #000000">7</span><span style="color: #000000">,</span><span style="color: #000000">8</span><span style="color: #000000">,</span><span style="color: #000000">9</span><span style="color: #000000">}</span></span><span style="color: #000000">;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;ivec(ia,ia</span><span style="color: #000000">+</span><span style="color: #000000">9</span><span style="color: #000000">);&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;tvec(ia,ia</span><span style="color: #000000">+</span><span style="color: #000000">9</span><span style="color: #000000">);&nbsp;<br />
<img id="Codehighlighter1_232_378_Open_Image" onclick="this.style.display='none'; Codehighlighter1_232_378_Open_Text.style.display='none'; Codehighlighter1_232_378_Closed_Image.style.display='inline'; Codehighlighter1_232_378_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_232_378_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_232_378_Closed_Text.style.display='none'; Codehighlighter1_232_378_Open_Image.style.display='inline'; Codehighlighter1_232_378_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">::iterator&nbsp;it&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;ivec.begin();it&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;ivec.end();</span><span style="color: #000000">++</span><span style="color: #000000">it)</span><span id="Codehighlighter1_232_378_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_232_378_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img id="Codehighlighter1_302_375_Open_Image" onclick="this.style.display='none'; Codehighlighter1_302_375_Open_Text.style.display='none'; Codehighlighter1_302_375_Closed_Image.style.display='inline'; Codehighlighter1_302_375_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_302_375_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_302_375_Closed_Text.style.display='none'; Codehighlighter1_302_375_Open_Image.style.display='inline'; Codehighlighter1_302_375_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">for</span><span style="color: #000000">&nbsp;(vector</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">::iterator&nbsp;iv&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;tvec.begin();iv&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;tvec.end();</span><span style="color: #000000">++</span><span style="color: #000000">iv)</span><span id="Codehighlighter1_302_375_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_302_375_Open_Text"><span style="color: #000000">{&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />cout</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">it</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">*</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">iv</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">it&nbsp;</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">*</span><span style="color: #000000">iv</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" /></span><span style="color: #0000ff">if</span><span style="color: #000000">(</span><span style="color: #000000">*</span><span style="color: #000000">iv&nbsp;</span><span style="color: #000000">==</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">9</span><span style="color: #000000">)&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span><span style="color: #000000">&nbsp;</span></div>
 <img src ="http://www.blogjava.net/babymouse/aggbug/233152.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/babymouse/" target="_blank">Robert Su</a> 2008-10-08 15:34 <a href="http://www.blogjava.net/babymouse/archive/2008/10/08/233152.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一道关于堆栈的面试题C++</title><link>http://www.blogjava.net/babymouse/archive/2008/08/08/220960.html</link><dc:creator>Robert Su</dc:creator><author>Robert Su</author><pubDate>Fri, 08 Aug 2008 10:14:00 GMT</pubDate><guid>http://www.blogjava.net/babymouse/archive/2008/08/08/220960.html</guid><wfw:comment>http://www.blogjava.net/babymouse/comments/220960.html</wfw:comment><comments>http://www.blogjava.net/babymouse/archive/2008/08/08/220960.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/babymouse/comments/commentRss/220960.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/babymouse/services/trackbacks/220960.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">#include&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">stdio.h</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;ShowMe()&nbsp;<br />
{&nbsp;<br />
&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">showme\n</span><span style="color: #000000">"</span><span style="color: #000000">);&nbsp;<br />
}&nbsp;<br />
</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;add(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;value,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;value1)&nbsp;<br />
{&nbsp;<br />
&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;pAdd</span><span style="color: #000000">=&amp;</span><span style="color: #000000">value;&nbsp;<br />
&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;value2</span><span style="color: #000000">=</span><span style="color: #000000">pAdd</span><span style="color: #000000">-</span><span style="color: #000000">1</span><span style="color: #000000">;&nbsp;<br />
&nbsp;&nbsp;</span><span style="color: #000000">*</span><span style="color: #000000">value2</span><span style="color: #000000">=*</span><span style="color: #000000">value2</span><span style="color: #000000">-</span><span style="color: #000000">0x0e</span><span style="color: #000000">;&nbsp;<br />
&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;(value</span><span style="color: #000000">+</span><span style="color: #000000">value1);&nbsp;<br />
}&nbsp;<br />
</span><span style="color: #008000">/*</span><span style="color: #008000">&nbsp;<br />
</span><span style="color: #008000">*/</span><span style="color: #000000">&nbsp;<br />
</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;add3v(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;v,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;v1,</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;v2)&nbsp;<br />
{&nbsp;<br />
&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;(v</span><span style="color: #000000">+</span><span style="color: #000000">v1</span><span style="color: #000000">+</span><span style="color: #000000">v2);&nbsp;<br />
}&nbsp;<br />
</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;main(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;argc,&nbsp;</span><span style="color: #0000ff">char</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;argv[])&nbsp;<br />
{&nbsp;&nbsp;&nbsp;&nbsp;ShowMe();&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;temp</span><span style="color: #000000">=</span><span style="color: #000000">add(</span><span style="color: #000000">10</span><span style="color: #000000">,</span><span style="color: #000000">12</span><span style="color: #000000">);&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;te</span><span style="color: #000000">=</span><span style="color: #000000">add3v(</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">4</span><span style="color: #000000">,</span><span style="color: #000000">5</span><span style="color: #000000">);&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000">"</span><span style="color: #000000">%d,%d</span><span style="color: #000000">"</span><span style="color: #000000">,temp,te);&nbsp;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;&nbsp;<br />
}</span></div>
<br />
这个程序输入在VC下是一直是showMe，死循环<br />
结果是：不停的调用showme()。 <br />
showme <br />
showme <br />
showme <br />
showme <br />
showme <br />
showme <br />
showme <br />
。。。 <br />
<br />
<br />
请教了同学，找出了答案<br />
这个是自动变量存储栈，传给函数的参数是以栈这种结构来开辟暂时存贮空间的。现在的C++编译器处理函数参数后按照参数表的顺序往临时开辟的栈空间中压入数据，以这段程序来说~先压进value，再压进value1，而函数内部语句的执行代码也是以栈的形式存贮的<br />
&nbsp;ShowMe();这段程序的执行代码是最先被压入函数的执行栈中的，int temp=add(10,12); 地址要高于ShowMe();这个函数的地址<br />
，int temp=add(10,12); 把地址又改回里低地址。<br />
局部函数的参数<br />
函数内代码的执行，都是按照栈这种方法进行的<br />
<br />
<span style="color: #000080">这道题目不能说没有意思，主要考察了基础的汇编以及堆栈知识。 <br />
int* value2=pAdd-1; <br />
*value2=*value2-0x0e; <br />
<br />
这里明显修改了add函数返回地址，刚恰好showme()的入口地址，所以就 <br />
add-&gt;showme-&gt;add-&gt;showme ... <br />
不停的调用下去。 <br />
<br />
<br />
</span>
 <img src ="http://www.blogjava.net/babymouse/aggbug/220960.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/babymouse/" target="_blank">Robert Su</a> 2008-08-08 18:14 <a href="http://www.blogjava.net/babymouse/archive/2008/08/08/220960.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>数组归并排序</title><link>http://www.blogjava.net/babymouse/archive/2008/08/08/220927.html</link><dc:creator>Robert Su</dc:creator><author>Robert Su</author><pubDate>Fri, 08 Aug 2008 07:26:00 GMT</pubDate><guid>http://www.blogjava.net/babymouse/archive/2008/08/08/220927.html</guid><wfw:comment>http://www.blogjava.net/babymouse/comments/220927.html</wfw:comment><comments>http://www.blogjava.net/babymouse/archive/2008/08/08/220927.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/babymouse/comments/commentRss/220927.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/babymouse/services/trackbacks/220927.html</trackback:ping><description><![CDATA[<p>去年的一道面试题，想起来了，顺遍把代码贴到这里<br />
两个数组合并到一起，然后排序；用set确实比较方面了</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iostream</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
#include</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">set</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;&nbsp;<br />
#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">iterator</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />
#include</span><span style="color: #000000">&lt;</span><span style="color: #000000">algorithm</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;&nbsp;<br />
</span><span style="color: #0000ff">using</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">namespace</span><span style="color: #000000">&nbsp;std;<br />
<br />
</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;_tmain(</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;argc,&nbsp;_TCHAR</span><span style="color: #000000">*</span><span style="color: #000000">&nbsp;argv[])<br />
{<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;a[</span><span style="color: #000000">5</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">{</span><span style="color: #000000">2</span><span style="color: #000000">,</span><span style="color: #000000">5</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">2</span><span style="color: #000000">,</span><span style="color: #000000">3</span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">int</span><span style="color: #000000">&nbsp;b[</span><span style="color: #000000">10</span><span style="color: #000000">]</span><span style="color: #000000">=</span><span style="color: #000000">{</span><span style="color: #000000">8</span><span style="color: #000000">,</span><span style="color: #000000">9</span><span style="color: #000000">,</span><span style="color: #000000">5</span><span style="color: #000000">,</span><span style="color: #000000">9</span><span style="color: #000000">,</span><span style="color: #000000">7</span><span style="color: #000000">,</span><span style="color: #000000">1</span><span style="color: #000000">,</span><span style="color: #000000">3</span><span style="color: #000000">,</span><span style="color: #000000">4</span><span style="color: #000000">,</span><span style="color: #000000">4</span><span style="color: #000000">,</span><span style="color: #000000">6</span><span style="color: #000000">};<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">ist(a,a</span><span style="color: #000000">+</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(a)</span><span style="color: #000000">/</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(a[</span><span style="color: #000000">0</span><span style="color: #000000">]));&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">::iterator&nbsp;&nbsp;itor;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">it(b,b</span><span style="color: #000000">+</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(b)</span><span style="color: #000000">/</span><span style="color: #0000ff">sizeof</span><span style="color: #000000">(b[</span><span style="color: #000000">0</span><span style="color: #000000">]));<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">::iterator&nbsp;p;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(&nbsp;itor&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;ist.begin();itor&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">ist.end();</span><span style="color: #000000">++</span><span style="color: #000000">itor)&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">itor</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(p</span><span style="color: #000000">=</span><span style="color: #000000">it.begin();p</span><span style="color: #000000">!=</span><span style="color: #000000">it.end();</span><span style="color: #000000">++</span><span style="color: #000000">p)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">p</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">"</span><span style="color: #000000">合并后：</span><span style="color: #000000">"</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;&nbsp;&nbsp;<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">su;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">set</span><span style="color: #000000">&lt;</span><span style="color: #0000ff">int</span><span style="color: #000000">&gt;</span><span style="color: #000000">::iterator&nbsp;q;<br />
&nbsp;&nbsp;&nbsp;&nbsp;set_union(ist.begin(),ist.end(),it.begin(),it.end(),inserter(su,su.begin()));<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(q</span><span style="color: #000000">=</span><span style="color: #000000">su.begin();q</span><span style="color: #000000">!=</span><span style="color: #000000">su.end();</span><span style="color: #000000">++</span><span style="color: #000000">q)<br />
&nbsp;&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cout</span><span style="color: #000000">&lt;&lt;*</span><span style="color: #000000">q</span><span style="color: #000000">&lt;&lt;</span><span style="color: #000000">endl;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">return</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0</span><span style="color: #000000">;<br />
}<br />
<br />
}</span></div>
 <img src ="http://www.blogjava.net/babymouse/aggbug/220927.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/babymouse/" target="_blank">Robert Su</a> 2008-08-08 15:26 <a href="http://www.blogjava.net/babymouse/archive/2008/08/08/220927.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>