锘??xml version="1.0" encoding="utf-8" standalone="yes"?>免费亚洲电影,国产精品羞羞答答,欧美国产日本韩http://m.shnenglu.com/kevinlynx/category/19778.html浣庤皟鍋氭妧鏈痏_ C/C++\MMORPG鏈嶅姟鍣╘妯″潡鏋舵瀯__ TODO錛歭inux env/read more books __Kevin Lynxzh-cnWed, 05 Sep 2012 05:06:43 GMTWed, 05 Sep 2012 05:06:43 GMT60C/c++涓嚑縐嶆搷浣滀綅鐨勬柟娉?/title><link>http://m.shnenglu.com/kevinlynx/archive/2012/09/04/189464.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Tue, 04 Sep 2012 12:29:00 GMT</pubDate><guid>http://m.shnenglu.com/kevinlynx/archive/2012/09/04/189464.html</guid><wfw:comment>http://m.shnenglu.com/kevinlynx/comments/189464.html</wfw:comment><comments>http://m.shnenglu.com/kevinlynx/archive/2012/09/04/189464.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.shnenglu.com/kevinlynx/comments/commentRss/189464.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/kevinlynx/services/trackbacks/189464.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class="entry-content"> <p>鍙傝?a >How do you set, clear and toggle a single bit in C?</a></p> <p>c/c++涓浜岃繘鍒朵綅鐨勬搷浣滃寘鎷緗煇浣嶄負1銆佹竻闄ゆ煇浣嶏紙緗負0錛夈佸紑鍏蟲煇浣?toggling a bit)銆佹鏌ユ煇浣嶆槸鍚︿負1絳夈傝繖浜涙搷浣滆緝涓哄父瑙佸茍涓斿彲浠ヤ綔涓哄叾浠栦綅榪愮畻鐨勫熀紜鎺ュ彛錛屼互涓嬬綏鍒楀嚑縐嶆柟娉曪細</p> <h2>浼犵粺鏂規硶</h2> <ul> <li>璁劇疆鏌愪綅涓?</li> </ul> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="n">number</span> <span id="hvzpftn" class="o">|=</span> <span id="hvzpftn" class="mi">1</span> <span id="hvzpftn" class="o"><<</span> <span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="c1">// 璁劇疆絎瑇浣嶄負1</span> </code></pre> </div> <!-- more --> <ul> <li>娓呴櫎鏌愪綅</li> </ul> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="n">number</span> <span id="hvzpftn" class="o">&=</span> <span id="hvzpftn" class="o">~</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="mi">1</span> <span id="hvzpftn" class="o"><<</span> <span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="p">);</span> <span id="hvzpftn" class="c1">// 緗x浣嶄負0</span> </code></pre> </div> <ul> <li>寮鍏蟲煇浣?/li> </ul> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="n">number</span> <span id="hvzpftn" class="o">^=</span> <span id="hvzpftn" class="mi">1</span> <span id="hvzpftn" class="o"><<</span> <span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="p">;</span> </code></pre> </div> <ul> <li>媯鏌ユ煇浣?/li> </ul> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="k">if</span> <span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">number</span> <span id="hvzpftn" class="o">&</span> <span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="mi">1</span> <span id="hvzpftn" class="o"><<</span> <span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="p">))</span> </code></pre> </div> <p>鐩稿簲鍦版垜浠彲浠ュ皢鍏跺皝瑁呰搗鏉ワ紝綆渚跨殑鏂規硶鏄嬌鐢ㄥ畯鏉ュ皝瑁咃細</p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="cp">#define BIT_SET(a,b) ((a) |= (1<<(b)))</span> <span id="hvzpftn" class="cp">#define BIT_CLEAR(a,b) ((a) &= ~(1<<(b)))</span> <span id="hvzpftn" class="cp">#define BIT_FLIP(a,b) ((a) ^= (1<<(b)))</span> <span id="hvzpftn" class="cp">#define BIT_CHECK(a,b) ((a) & (1<<(b)))</span> </code></pre> </div> <h2>浣跨敤浣嶇粨鏋勬搷浣?/h2> <p>榪欎釜浣跨敤璧鋒潵綆鍗曞緢澶氾細</p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="k">struct</span> <span id="hvzpftn" class="n">bits</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="kt">unsigned</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="n">a</span><span id="hvzpftn" class="o">:</span><span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="kt">unsigned</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="n">b</span><span id="hvzpftn" class="o">:</span><span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="kt">unsigned</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="n">c</span><span id="hvzpftn" class="o">:</span><span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="p">};</span> <span id="hvzpftn" class="k">struct</span> <span id="hvzpftn" class="n">bits</span> <span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="c1">// set/clear a bit</span> <span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">b</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">c</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="mi">0</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="c1">// toggle a bit</span> <span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">a</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="o">!</span><span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">a</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">b</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="o">~</span><span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">b</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">c</span> <span id="hvzpftn" class="o">^=</span> <span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="c1">// check a bit</span> <span id="hvzpftn" class="k">if</span> <span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">mybits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">c</span><span id="hvzpftn" class="p">)</span> </code></pre> </div> <h2>浣跨敤STL鐨剆td::bitset<n></n> </h2> <p>榪欎釜鏂規硶鍏跺疄綾諱技浜庝嬌鐢ㄤ綅緇撴瀯錛屽彧涓嶈繃STL鍖呰浜嗚繖涓粨鏋勫畾涔夛紝褰撶劧榪樻彁渚涗簡寰堝渚挎嵎鐨勬帴鍙o細</p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="n">std</span><span id="hvzpftn" class="o">::</span><span id="hvzpftn" class="n">bitset</span><span id="hvzpftn" class="o"><</span><span id="hvzpftn" class="mi">5</span><span id="hvzpftn" class="o">></span> <span id="hvzpftn" class="n">bits</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">bits</span><span id="hvzpftn" class="p">[</span><span id="hvzpftn" class="mi">0</span><span id="hvzpftn" class="p">]</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="nb">true</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">bits</span><span id="hvzpftn" class="p">[</span><span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">]</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="nb">false</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">bits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">set</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="mi">2</span><span id="hvzpftn" class="p">);</span> <span id="hvzpftn" class="n">bits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">flip</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="mi">3</span><span id="hvzpftn" class="p">);</span> <span id="hvzpftn" class="n">bits</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">reset</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="mi">2</span><span id="hvzpftn" class="p">);</span> </code></pre> </div> <p class="post-footer"> 鍘熸枃鍦板潃錛? <a >http://codemacro.com/2012/09/04/bit-operation-in-c-slash-c-plus-plus/</a><br /> written by <a >Kevin Lynx</a>  posted at <a >http://codemacro.com</a> </p> </div><img src ="http://m.shnenglu.com/kevinlynx/aggbug/189464.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2012-09-04 20:29 <a href="http://m.shnenglu.com/kevinlynx/archive/2012/09/04/189464.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>C/c++涓殑--&gt;榪愮畻絎?/title><link>http://m.shnenglu.com/kevinlynx/archive/2012/09/03/189272.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Mon, 03 Sep 2012 07:30:00 GMT</pubDate><guid>http://m.shnenglu.com/kevinlynx/archive/2012/09/03/189272.html</guid><wfw:comment>http://m.shnenglu.com/kevinlynx/comments/189272.html</wfw:comment><comments>http://m.shnenglu.com/kevinlynx/archive/2012/09/03/189272.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://m.shnenglu.com/kevinlynx/comments/commentRss/189272.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/kevinlynx/services/trackbacks/189272.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class="entry-content"> <p>鍙傝?a >What is the name of this operator: “–>”?</a></p> <p>c/c++涓互涓嬩唬鐮佹槸鍚堟硶鐨勶細</p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="cp">#include <stdio.h></span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="nf">main</span><span id="hvzpftn" class="p">()</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="n">x</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="mi">10</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="k">while</span><span id="hvzpftn" class="p">(</span> <span id="hvzpftn" class="n">x</span> <span id="hvzpftn" class="o">--></span> <span id="hvzpftn" class="mi">0</span> <span id="hvzpftn" class="p">)</span> <span id="hvzpftn" class="c1">// x goes to 0</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="n">printf</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="s">"%d "</span><span id="hvzpftn" class="p">,</span> <span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="p">);</span> <span id="hvzpftn" class="p">}</span> <span id="hvzpftn" class="p">}</span> </code></pre> </div> <p><code>--></code>鏄竴涓悎娉曠殑鎿嶄綔絎︼紝鎴戞墦璧岃嚜璁/c++鐔熸墜鐨勪綘浠兘涓嶇煡閬撹繖涓搷浣滅銆傛湁浜虹О瀹冧負<code>goes to</code>鎿嶄綔絎︼紝<code>x-->0</code>琛ㄧずx鍚?瓚嬭繎銆?/p> <p><strong>鍏跺疄鎴戝湪蹇芥偁浣犱滑銆?/strong> 騫朵笖鎴戠浉淇℃湁寰堝浜哄姝ゆ妸鎴忕浉褰撶啛鎮夈傛病閿欙紝<code>--></code>鍙槸涓や釜鎿嶄綔絎︽伆濂介亣鍦ㄤ簡涓璧鳳紝浠栦滑鏄嚜鍑忚繍綆楃<code>--</code>鍜屽ぇ浜庢瘮杈冭繍綆楃<code>></code>錛?/p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="k">while</span> <span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="o">--</span> <span id="hvzpftn" class="o">></span> <span id="hvzpftn" class="mi">0</span><span id="hvzpftn" class="p">)</span> <span id="hvzpftn" class="p">...</span> </code></pre> </div> <p>綾諱技鐨勬妸鎴忚繕鏈夛細</p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="k">while</span> <span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">x</span> <span id="hvzpftn" class="o">--</span> \<br /> \<br /> \<br /> \<br /> <span id="hvzpftn" class="o">></span> <span id="hvzpftn" class="mi">0</span><span id="hvzpftn" class="p">)</span> <span id="hvzpftn" class="n">printf</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="s">"%d "</span><span id="hvzpftn" class="p">,</span> <span id="hvzpftn" class="n">x</span><span id="hvzpftn" class="p">);</span> </code></pre> </div> <p class="post-footer"> 鍘熸枃鍦板潃錛? <a >http://codemacro.com/2012/09/03/goes-to-operator/</a><br /> written by <a >Kevin Lynx</a>  posted at <a >http://codemacro.com</a> </p> </div><img src ="http://m.shnenglu.com/kevinlynx/aggbug/189272.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2012-09-03 15:30 <a href="http://m.shnenglu.com/kevinlynx/archive/2012/09/03/189272.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>浣跨敤memcmp姣旇緝涓や釜鍙橀噺緇撴灉涓瀹氬悧錛?/title><link>http://m.shnenglu.com/kevinlynx/archive/2012/08/17/187481.html</link><dc:creator>Kevin Lynx</dc:creator><author>Kevin Lynx</author><pubDate>Fri, 17 Aug 2012 06:07:00 GMT</pubDate><guid>http://m.shnenglu.com/kevinlynx/archive/2012/08/17/187481.html</guid><wfw:comment>http://m.shnenglu.com/kevinlynx/comments/187481.html</wfw:comment><comments>http://m.shnenglu.com/kevinlynx/archive/2012/08/17/187481.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://m.shnenglu.com/kevinlynx/comments/commentRss/187481.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/kevinlynx/services/trackbacks/187481.html</trackback:ping><description><![CDATA[<div id="hvzpftn" class="entry-content"> <p>鍙傝?a >Is using memcmp on array of int strictly conforming?</a></p> <p>浠ヤ笅浠g爜涓瀹氫細杈撳嚭ok鍚楋紵</p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="cp">#include <stdio.h></span> <span id="hvzpftn" class="cp">#include <string.h></span> <span id="hvzpftn" class="k">struct</span> <span id="hvzpftn" class="n">S</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="n">array</span><span id="hvzpftn" class="p">[</span><span id="hvzpftn" class="mi">2</span><span id="hvzpftn" class="p">];</span> <span id="hvzpftn" class="p">};</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="nf">main</span> <span id="hvzpftn" class="p">()</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="k">struct</span> <span id="hvzpftn" class="n">S</span> <span id="hvzpftn" class="n">a</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="mi">1</span><span id="hvzpftn" class="p">,</span> <span id="hvzpftn" class="mi">2</span> <span id="hvzpftn" class="p">}</span> <span id="hvzpftn" class="p">};</span> <span id="hvzpftn" class="k">struct</span> <span id="hvzpftn" class="n">S</span> <span id="hvzpftn" class="n">b</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="n">b</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="n">a</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="k">if</span> <span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">memcmp</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">b</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">array</span><span id="hvzpftn" class="p">,</span> <span id="hvzpftn" class="n">a</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">array</span><span id="hvzpftn" class="p">,</span> <span id="hvzpftn" class="k">sizeof</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="n">b</span><span id="hvzpftn" class="p">.</span><span id="hvzpftn" class="n">array</span><span id="hvzpftn" class="p">))</span> <span id="hvzpftn" class="o">==</span> <span id="hvzpftn" class="mi">0</span><span id="hvzpftn" class="p">)</span> <span id="hvzpftn" class="p">{</span> <span id="hvzpftn" class="n">puts</span><span id="hvzpftn" class="p">(</span><span id="hvzpftn" class="s">"ok"</span><span id="hvzpftn" class="p">);</span> <span id="hvzpftn" class="p">}</span> <span id="hvzpftn" class="k">return</span> <span id="hvzpftn" class="mi">0</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="p">}</span> </code></pre> </div> <!-- more --> <p>鎴戝湪vs2005浠ュ強gcc4.4.3涓婂仛浜嗘祴璇曪紝閮借緭鍑轟簡ok銆備絾榪欏茍涓嶆剰鍛寵繖涓唬鐮佷細姘歌繙杈撳嚭ok銆傞棶棰樹富瑕侀泦涓簬榪欓噷浣跨敤浜嗚祴鍊艱鍙ユ潵澶嶅埗鍊鹼紝浣嗗嵈浣跨敤浜唌emcmp榪欎釜鍩轟簬鍐呭瓨鏁版嵁姣旇緝鐨勫嚱鏁版潵姣旇緝鍊箋?/p> <p>c璇█涓殑璧嬪艱繍綆楃錛?錛夎瀹氫箟涓哄熀浜庡肩殑澶嶅埗錛岃屼笉鏄熀浜庡唴瀛樺唴瀹圭殑澶嶅埗銆?/p> <blockquote><p><strong>C99 section 6.5.16.1 p2:</strong> In simple assignment (=), the value of the right operand is converted to the type of the assignment expression and replaces the value stored in the object designated by the left operand.</p></blockquote> <p>榪欎釜鍏跺疄寰堝ソ鐞嗚В錛屽挨鍏跺湪涓嶅悓綾誨瀷鐨勬暟瀛楃被鍨嬮棿澶嶅埗鏃訛紝渚嬪錛?/p> <div id="hvzpftn" class="highlight"> <pre><code class="c"><span id="hvzpftn" class="kt">float</span> <span id="hvzpftn" class="n">a</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="mf">1.1</span><span id="hvzpftn" class="p">;</span> <span id="hvzpftn" class="kt">int</span> <span id="hvzpftn" class="n">b</span> <span id="hvzpftn" class="o">=</span> <span id="hvzpftn" class="n">a</span><span id="hvzpftn" class="p">;</span> </code></pre> </div> <p>鍥犱負嫻偣鏁板拰鏁村艦鏁扮殑鍐呭瓨甯冨眬涓嶄竴鏍鳳紝鎵浠ヨ偗瀹氭槸鍩轟簬鍊肩殑涓縐嶅鍒躲傚彟澶栵紝鎸夌収璇█鏍囧噯鐨勬濊礬鏉ョ湅錛屽唴瀛樺竷灞榪欑涓滆タ涓鑸兘灞炰簬瀹炵幇鐩稿叧鐨勶紝鎵浠ヨ璦鏍囧噯鏄笉浼氫緷璧栧疄鐜板幓瀹氫箟璇█鐨勩?/p> <p>涓婇潰鐨勫畾鐞嗗悓鏍風敤浜庡鏉傛暟鎹被鍨嬶紝渚嬪緇撴瀯浣撱傛垜浠兘鐭ラ亾緇撴瀯浣撴瘡涓垚鍛樹箣闂村彲鑳戒細鏈夊瓧鑺傝ˉ榻愶紝鑰屼嬌鐢ㄨ祴鍊艱繍綆楃鏉ュ鍒舵椂錛屼細涓嶄細澶嶅埗榪欎簺琛ラ綈瀛楄妭鐨勫唴瀹癸紝鏄璦鏍囧噯鏈瀹氱殑銆傝繖鎰忓懗鐫浣跨敤memcmp姣旇緝涓や釜閫氳繃璧嬪艱繍綆楃澶嶅埗鐨勪袱涓粨鏋勪綋鏃訛紝鍏剁粨鏋滄槸鏈畾鐨勩?/p> <p>浣嗘槸涓婇潰鐨勪唬鐮佷緥瀛愪腑錛屾瘮杈冪殑鍏跺疄鏄袱涓猧nt鏁扮粍銆傝繖涔熸棤娉曠‘璁ょ粨鏋滃悧錛熻繖涓棶棰樻渶緇堥泦涓簬錛岄毦閬搃nt涔熶細鏈変笉紜畾鐨勮ˉ榻愬瓧鑺傛暟鎹紵</p> <blockquote><p><strong>C99 6.2.6.2 integer types</strong> For signed integer types, the bits of the object representation shall be divided into three groups: value bits, padding bits, and the sign bit. […] The values of any padding bits are unspecified.</p></blockquote> <p>榪欒瘽鍏跺疄鎴戜篃涓嶅お鎳傘備竴涓湁絎﹀彿鏁存暟int錛屽叾鍐呬篃鏈夎ˉ榻愪簩榪涘埗浣?bits)錛?/p> <p>浣嗘棤璁哄浣曪紝榪欎釜渚嬪瓙閮戒笉綆椾弗璋ㄧ殑浠g爜銆備漢浠殑寤鴻鏄嬌鐢╩emcpy鏉ュ鍒惰繖縐嶆暟鎹紝鍥犱負memcpy鍜宮emcmp閮芥槸鍩轟簬鍐呭瓨鍐呭鏉ュ伐浣滅殑銆?/p> <p class="post-footer"> 鍘熸枃鍦板潃錛? <a >http://codemacro.com/2012/08/17/memcmp-on-copy-value/</a><br /> written by <a >Kevin Lynx</a>  posted at <a >http://codemacro.com</a> </p> </div><img src ="http://m.shnenglu.com/kevinlynx/aggbug/187481.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/kevinlynx/" target="_blank">Kevin Lynx</a> 2012-08-17 14:07 <a href="http://m.shnenglu.com/kevinlynx/archive/2012/08/17/187481.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>璁﹚xListCtrl鏀寔瀛恑tem緙栬緫http://m.shnenglu.com/kevinlynx/archive/2012/08/07/186581.htmlKevin LynxKevin LynxTue, 07 Aug 2012 09:09:00 GMThttp://m.shnenglu.com/kevinlynx/archive/2012/08/07/186581.htmlhttp://m.shnenglu.com/kevinlynx/comments/186581.htmlhttp://m.shnenglu.com/kevinlynx/archive/2012/08/07/186581.html#Feedback0http://m.shnenglu.com/kevinlynx/comments/commentRss/186581.htmlhttp://m.shnenglu.com/kevinlynx/services/trackbacks/186581.html

鎴戜嬌鐢ㄧ殑wxLua鐗堟湰淇℃伅涓?code>wxLua 2.8.7.0 built with wxWidgets 2.8.8錛屼篃灝辨槸LuaForWindows_v5.1.4-40.exe榪欎釜瀹夎鍖呴噷鑷甫鐨剋xLua銆傛垜涓嶇煡閬撳叾浠杦xWidgets鐗堟湰閲寃xListCtrl鎬庢牱錛屼絾鎴戜嬌鐢ㄧ殑鐗堟湰閲寃xListCtrl鏄笉鏀寔緙栬緫閲岄潰鐨勫瓙item鐨勩傚湪鎴戜嬌鐢ㄧ殑report妯″紡涓嬶紝瀛恑tem涔熷氨鏄壒瀹氭煇涓琛屼竴鍒楃殑item銆?/p>

google浜嗕竴涓嬶紝鍙戠幇鎮插墽鍦伴渶瑕佽嚜宸卞疄鐜幫紝涓昏灝辨槸鑷繁鏄劇ず涓涓獁xTextCtrl錛?/p>

--
-- file: wxListCtrlTextEdit.lua
-- author: Kevin Lynx
-- date: 08.06.2012
--
local EditList = {}

-- get the column by an abs point
function EditList:getColumn(x)
    local cols = self.listctrl:GetColumnCount()
    local cx = 0
    for i = 0, cols - 1 do
        local w = self.listctrl:GetColumnWidth(i)
        if x <= cx + w then return i end
        cx = cx + w
    end
    return -1
end

-- when a mouse down, show a text edit control 
function EditList:onLeftDown(evt)
    if self.editor:IsShown() then
        self:closeEditor()
    end
    local p = evt:GetPoint()
    local row = evt:GetIndex()
    local col = self:getColumn(p.x)
    local rect = wx.wxListCtrlEx.GetSubItemRect(self.listctrl, row, col)
    rect:SetHeight(rect:GetHeight() + 5) -- adjust
    self.editor:SetSize(rect)
    self.editor:Show()
    self.editor:SetValue(wx.wxListCtrlEx.GetItemText(self.listctrl, row, col))
    self.editor:SetFocus()
    self.col = col
    self.row = row
end

function EditList:closeEditor()
    if not self.editor:IsShown() then return end
    self.editor:Hide()
    self.listctrl:SetItem(self.row, self.col, self.editor:GetValue())
end

function EditList:initialize()
    self.editor = wx.wxTextCtrl(self.listctrl, wx.wxID_ANY, "", wx.wxDefaultPosition, wx.wxDefaultSize, wx.wxTE_PROCESS_ENTER + wx.wxTE_RICH2)
    self.editor:Connect(wx.wxEVT_COMMAND_TEXT_ENTER, function () self:closeEditor() end)
    -- not work actually
    self.editor:Connect(wx.wxEVT_COMMAND_KILL_FOCUS, function () self:closeEditor() end)
    self.editor:Hide()
end

function wx.wxListCtrlTextEdit(listctrl)
    local o = {
        listctrl = listctrl,
        editor = nil,
    }
    local editlist = newObject(o, EditList)
    editlist:initialize()
    listctrl:Connect(wx.wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, function (evt) editlist:onLeftDown(evt) end)
    listctrl:Connect(wx.wxEVT_COMMAND_LIST_ITEM_FOCUSED, function () editlist:closeEditor() end)
    return listctrl
end

鍏跺師鐞嗗氨鏄幏鍙栧埌褰撳墠榧犳爣鐐瑰嚮鎵鍦ㄧ殑瀛恑tem浣嶇疆錛岀劧鍚庡湪姝や綅緗樉紺轟竴涓獁xEditCtrl鍗沖彲銆備互涓婁唬鐮侀渶瑕佷緷璧栨垜涔嬪墠鍐欑殑Lua閲屽疄鐜扮畝鍗曠殑綾?瀵硅薄涓殑浠g爜錛屽悓鏃朵緷璧栦互涓嬮拡瀵箇xListCtrl鐨勬墿灞曟帴鍙o細

--
-- file: wxListCtrlExtend.lua
-- author: Kevin Lynx
-- date: 08.07.2012
-- brief: extend some util functions to wx.wxListCtrl
-- 
wx.wxListCtrlEx = {}

function wx.wxListCtrlEx.GetSubItemRect(listctrl, item, col)
    local rect = wx.wxRect()
    listctrl:GetItemRect(item, rect)
    local x = 0
    local w = 0
    for i = 0, col do
        w = listctrl:GetColumnWidth(i)
        x = x + w
    end
    return wx.wxRect(x - w, rect:GetY(), w, rect:GetHeight())
end

function wx.wxListCtrlEx.GetItemText(listctrl, item, col)
    local info = wx.wxListItem()
    info:SetId(item)
    info:SetColumn(col)
    info:SetMask(wx.wxLIST_MASK_TEXT)
    listctrl:GetItem(info)
    return info:GetText()
end

鍦ㄦ垜鐪嬪埌鐨剋xWidgets瀹樻柟鏂囨。閲岋紝鍏跺疄wxListCtrl宸茬粡鏈?code>GetSubItemRect鎺ュ彛錛屽茍涓斿湪鍙︿竴浜涚ず渚嬩唬鐮侀噷錛屼篃鐪嬪埌浜?code>GetItemText鎺ュ彛錛屼絾鏄紝鎴戜嬌鐢ㄧ殑鐗堟湰閲屾病鏈夛紝鎵浠ュ彧濂借嚜宸卞啓銆傚熀浜庝互涓婏紝瑕佷嬌鐢ㄨ繖涓彲浠ユ敮鎸佺紪杈戝瓙item鐨剋xListCtrl錛屽彲浠ワ細

list = wx.wxListCtrlTextEdit(wx.wxListCtrl(dialog, wx.wxID_ANY, wx.wxDefaultPosition, wx.wxDefaultSize, wx.wxLC_REPORT))

涔熷氨鏄氳繃wx.wxListCtrlTextEdit榪欎釜鍑芥暟鍋氫笅澶勭悊錛岃繖涓嚱鏁拌繑鍥炵殑鏄湰韜殑wxListCtrl銆傚綋鐒舵洿濂界殑鏂瑰紡鏄嬌鐢ㄧ戶鎵夸箣綾葷殑鏂瑰紡錛屽紑鍙戜竴縐嶆柊鐨勬帶浠訛紝浣嗗湪Lua涓紝閽堝usedata綾誨瀷鐨勬墿灞曡矊浼煎彧鑳借繖鏍蜂簡銆?/p>

鏈濂藉悙妲戒笅錛岃繖涓帶浠舵墿灞曞叾瀹炲緢鎭跺績銆傛湰鏉ユ垜鎵撶畻褰撶紪杈戞帶浠跺け鍘葷劍鐐瑰悗灝遍殣钘忓畠錛屼絾鏄線緙栬緫鎺т歡涓婃敞鍐孠ILL_FOCUS浜嬩歡濮嬬粓涓嶈搗浣滅敤錛涙垜鍙堟墦綆楀紕涓狤SC閿洏浜嬩歡鍘繪墜鍔ㄥ彇娑堬紝浣嗘樉鐒秝xTextCtrl鏄笉鏀寔閿洏浜嬩歡鐨勩傚ソ鍚э紝鍑戝悎鐢ㄤ簡銆?/p>



Kevin Lynx 2012-08-07 17:09 鍙戣〃璇勮
]]>
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品99国产精品| 亚洲国产片色| 久久精品亚洲一区二区三区浴池| 欧美激情无毛| 欧美激情第9页| 欧美激情女人20p| 亚洲高清久久| 久久午夜视频| 亚洲欧洲偷拍精品| 亚洲网站在线看| 亚洲综合色在线| 午夜精品成人在线| 99re6热只有精品免费观看| 亚洲国产精品一区| 一区二区三区日韩欧美| 欧美一区二区三区四区视频| 久久成人免费| 亚洲精品久久久久| 香蕉久久夜色精品国产| 欧美好吊妞视频| 国产一区二区三区在线观看免费视频 | 狠狠色丁香久久婷婷综合_中| 黑人巨大精品欧美一区二区| 99视频精品免费观看| 欧美一激情一区二区三区| 老司机午夜精品视频| 亚洲精选在线| 欧美成人一品| 亚洲黑丝在线| 欧美69视频| 午夜久久资源| 国产午夜精品麻豆| 免费一区视频| 久久免费午夜影院| 国产日韩成人精品| 欧美人成在线| 亚洲欧美制服另类日韩| 久久久av毛片精品| 亚洲性感激情| 欧美精品一区二区三区在线播放 | 亚洲第一中文字幕在线观看| 亚洲日本免费| 久久在线91| 黄色小说综合网站| 久久精品一区蜜桃臀影院| 99热在这里有精品免费| 欧美激情视频在线免费观看 欧美视频免费一 | 欧美在线关看| 午夜国产精品视频| 国产伦精品一区二区三区四区免费| 亚洲日韩欧美视频一区| 欧美激情中文字幕在线| 欧美成年人视频网站欧美| 亚洲精品在线观看视频| 久久免费偷拍视频| 久久午夜精品| 亚洲欧美成人在线| 久久国产精品高清| 亚洲美女视频在线观看| 亚洲一级黄色片| 伊人婷婷欧美激情| 亚洲免费大片| 在线观看一区欧美| 欧美日韩精品三区| 亚洲国产精品女人久久久| 羞羞漫画18久久大片| 午夜精品一区二区三区四区| 欧美黄色小视频| 欧美午夜寂寞影院| 久久天堂精品| 一区二区三区蜜桃网| 亚洲国内自拍| 另类尿喷潮videofree| 狂野欧美一区| 亚洲国产综合在线| 免费中文字幕日韩欧美| 亚洲国产合集| 99精品热视频只有精品10| 蜜臀av性久久久久蜜臀aⅴ| 久久久国产一区二区| 一区二区亚洲精品| 欧美国产日韩一区二区在线观看| 欧美va天堂va视频va在线| 亚洲国产高清在线| 欧美成人在线免费视频| 99在线精品免费视频九九视| 欧美一区二区在线看| 伊人影院久久| 欧美日韩在线视频观看| 亚洲免费视频网站| 免费看亚洲片| 一本色道久久88综合日韩精品| 国产精品欧美精品| 欧美成人精品1314www| 亚洲欧美区自拍先锋| 美国成人毛片| 久久精品国产亚洲5555| 91久久久亚洲精品| 国产一级精品aaaaa看| 国产精品久久久久久久久免费樱桃 | 亚洲夫妻自拍| 久久av资源网站| 欧美亚洲在线| 欧美一区二区在线看| 亚洲国产一区二区三区高清| 亚洲成人在线视频播放| 亚洲日韩视频| 欧美在线二区| 欧美日韩成人激情| 国产精品视频yy9099| 国产精品一区二区黑丝| 亚洲视频欧美视频| 亚洲欧美日韩直播| 老司机午夜精品视频在线观看| 最近中文字幕日韩精品 | 亚洲国产日韩欧美在线动漫| 欧美在线一区二区三区| 精品福利电影| 亚洲性视频网站| 亚洲欧美日韩精品久久亚洲区| 午夜精品一区二区三区四区| 毛片一区二区| 激情av一区二区| 亚洲欧美日韩国产中文 | 亚洲欧美精品伊人久久| 久久一二三区| 欧美一区深夜视频| 国产精品久久久久久久久久尿| 亚洲二区视频在线| 久久精品国产亚洲精品| 亚洲一区二区三区免费观看 | 久久成人一区二区| 99在线观看免费视频精品观看| 老司机免费视频久久| 亚洲欧美另类综合偷拍| 久久综合给合久久狠狠狠97色69| 亚洲午夜女主播在线直播| 99成人精品| 亚洲乱码国产乱码精品精 | 亚洲国产精品精华液网站| 欧美激情精品久久久久久变态| 欧美高清不卡| 久久综合成人精品亚洲另类欧美| 亚洲福利专区| 欧美视频一二三区| 在线视频亚洲一区| 免费高清在线视频一区·| 亚洲全黄一级网站| 亚洲国产裸拍裸体视频在线观看乱了中文 | 久久精品夜夜夜夜久久| 欧美精品久久99| 亚洲精品中文字| 亚洲无限av看| 国产乱码精品一区二区三区五月婷 | 亚洲福利视频免费观看| 在线日韩av永久免费观看| 久久婷婷蜜乳一本欲蜜臀| 欧美成人精品1314www| 亚洲精品国产品国语在线app| 欧美精品综合| 亚洲一区二区三| 免费看的黄色欧美网站| 久久久久99精品国产片| 欧美激情乱人伦| 亚洲影院色在线观看免费| 国产亚洲精品成人av久久ww| 久久亚洲一区二区| 亚洲激情成人| 先锋资源久久| 国产精品福利片| 国产自产女人91一区在线观看| 欧美一区二区在线免费播放| 鲁鲁狠狠狠7777一区二区| 亚洲国产中文字幕在线观看| 欧美日韩一区二区在线观看视频| 亚洲欧美三级伦理| 亚洲国产精品视频一区| 欧美在线首页| 亚洲免费观看视频| 国产亚洲精品自拍| 欧美日韩人人澡狠狠躁视频| 欧美一区二区三区的| 亚洲精品偷拍| 蜜臀va亚洲va欧美va天堂| 亚洲欧美激情精品一区二区| 在线观看久久av| 国产精品户外野外| 欧美成人69av| 欧美一区二区私人影院日本| 亚洲精品国产精品国产自| 久久露脸国产精品| 日韩一二三区视频| 久久精品人人做人人爽| 一区二区动漫| 欧美夫妇交换俱乐部在线观看| 亚洲网友自拍| 在线播放中文一区| 欧美人与性动交α欧美精品济南到| 久久精品国语| 亚洲永久精品国产|