﻿<?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>C++博客-程序空间</title><link>http://www.cppblog.com/yinquan/</link><description /><language>zh-cn</language><lastBuildDate>Mon, 13 Apr 2026 09:39:36 GMT</lastBuildDate><pubDate>Mon, 13 Apr 2026 09:39:36 GMT</pubDate><ttl>60</ttl><item><title>反转单向链表</title><link>http://www.cppblog.com/yinquan/archive/2009/07/27/91349.html</link><dc:creator>尹泉</dc:creator><author>尹泉</author><pubDate>Mon, 27 Jul 2009 07:41:00 GMT</pubDate><guid>http://www.cppblog.com/yinquan/archive/2009/07/27/91349.html</guid><wfw:comment>http://www.cppblog.com/yinquan/comments/91349.html</wfw:comment><comments>http://www.cppblog.com/yinquan/archive/2009/07/27/91349.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/yinquan/comments/commentRss/91349.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/yinquan/services/trackbacks/91349.html</trackback:ping><description><![CDATA[<div id=codeSnippetWrapper style="BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: silver 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 8pt; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: silver 1px solid; WIDTH: 97.5%; CURSOR: text; DIRECTION: ltr; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: silver 1px solid; FONT-FAMILY: 'Courier New', courier, monospace; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; max-height: 200px">
<div id=codeSnippet style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none">
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum1 style="COLOR: #004f00">   1:</span> <span style="COLOR: #0000ff">struct</span> link</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum2 style="COLOR: #004f00">   2:</span> {</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum3 style="COLOR: #004f00">   3:</span>   <span style="COLOR: #0000ff">int</span> data;</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum4 style="COLOR: #004f00">   4:</span>   <span style="COLOR: #0000ff">struct</span> link *next;</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum5 style="COLOR: #004f00">   5:</span> };</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum6 style="COLOR: #004f00">   6:</span>&nbsp; </pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum7 style="COLOR: #004f00">   7:</span> link reverse(link x)</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum8 style="COLOR: #004f00">   8:</span> {</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum9 style="COLOR: #004f00">   9:</span>   <span style="COLOR: #0000ff">if</span>( NULL==x )</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum10 style="COLOR: #004f00">  10:</span>     <span style="COLOR: #0000ff">return</span> NULL;</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum11 style="COLOR: #004f00">  11:</span>   </pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum12 style="COLOR: #004f00">  12:</span>   link t=NULL;</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum13 style="COLOR: #004f00">  13:</span>   link r=NULL, y=x;  <span style="COLOR: #008000">//(0)</span></pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum14 style="COLOR: #004f00">  14:</span>   <span style="COLOR: #0000ff">while</span>(y!=NULL)</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum15 style="COLOR: #004f00">  15:</span>   {</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum16 style="COLOR: #004f00">  16:</span>     t = y-&gt;next;   <span style="COLOR: #008000">//(1)</span></pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum17 style="COLOR: #004f00">  17:</span>     y-&gt;next = r;   <span style="COLOR: #008000">//(2)</span></pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum18 style="COLOR: #004f00">  18:</span>     r = y;         <span style="COLOR: #008000">//(3) </span></pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum19 style="COLOR: #004f00">  19:</span>     y = t;         <span style="COLOR: #008000">//(4)</span></pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum20 style="COLOR: #004f00">  20:</span>    }</pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum21 style="COLOR: #004f00">  21:</span>&nbsp; </pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f9f7c8; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum22 style="COLOR: #004f00">  22:</span>   <span style="COLOR: #0000ff">return</span> r;     <span style="COLOR: #008000">//返回逆置后的链表</span></pre>
<!--crlf-->
<pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f7fff7; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"><span id=lnum23 style="COLOR: #004f00">  23:</span> }</pre>
<!--crlf--></div>
</div>
<img src ="http://www.cppblog.com/yinquan/aggbug/91349.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/yinquan/" target="_blank">尹泉</a> 2009-07-27 15:41 <a href="http://www.cppblog.com/yinquan/archive/2009/07/27/91349.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>C库源代码实现: strtok</title><link>http://www.cppblog.com/yinquan/archive/2009/06/01/86411.html</link><dc:creator>尹泉</dc:creator><author>尹泉</author><pubDate>Mon, 01 Jun 2009 06:52:00 GMT</pubDate><guid>http://www.cppblog.com/yinquan/archive/2009/06/01/86411.html</guid><wfw:comment>http://www.cppblog.com/yinquan/comments/86411.html</wfw:comment><comments>http://www.cppblog.com/yinquan/archive/2009/06/01/86411.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/yinquan/comments/commentRss/86411.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/yinquan/services/trackbacks/86411.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: NetBSD实现：   1: char*  strtok_r(char* string_org,const char* demial,char** last)   2: {   3: const char* spanp; //span表示分隔，p表示指针   4: char c, sc; //c表示char字符，sc表示 span char   5: c...&nbsp;&nbsp;<a href='http://www.cppblog.com/yinquan/archive/2009/06/01/86411.html'>阅读全文</a><img src ="http://www.cppblog.com/yinquan/aggbug/86411.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/yinquan/" target="_blank">尹泉</a> 2009-06-01 14:52 <a href="http://www.cppblog.com/yinquan/archive/2009/06/01/86411.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>