加入BMP库,加入常见位操作

This commit is contained in:
XerolySkinner
2022-11-24 23:56:57 +08:00
parent f6b6ac1329
commit 01324e987e
709 changed files with 17019 additions and 2341 deletions

View File

@@ -75,17 +75,21 @@ $(function() {
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#define-members">宏定义</a> &#124;
<a href="#typedef-members">类型定义</a> </div>
<div class="headertitle"><div class="title">varint.h 文件参考</div></div>
</div><!--header-->
<div class="contents">
<p>全局共用的标准类型表
<a href="#details">更多...</a></p>
<div class="textblock"><code>#include &quot;stdint.h&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
varint.h 的引用(Include)关系图:</div>
<div class="dyncontent">
<div class="center"><img src="varint_8h__incl.png" border="0" usemap="#a_d_1_2gitt_2_microchip_for32_2bsp___device_2varint_8h" alt=""/></div>
<map name="a_d_1_2gitt_2_microchip_for32_2bsp___device_2varint_8h" id="a_d_1_2gitt_2_microchip_for32_2bsp___device_2varint_8h">
<area shape="rect" title=" " alt="" coords="5,5,156,45"/>
<area shape="rect" title="全局共用的标准类型表" alt="" coords="5,5,156,45"/>
<area shape="rect" title=" " alt="" coords="48,93,113,119"/>
</map>
</div>
@@ -94,44 +98,105 @@ varint.h 的引用(Include)关系图:</div>
<div class="dyncontent">
<div class="center"><img src="varint_8h__dep__incl.png" border="0" usemap="#a_d_1_2gitt_2_microchip_for32_2bsp___device_2varint_8hdep" alt=""/></div>
<map name="a_d_1_2gitt_2_microchip_for32_2bsp___device_2varint_8hdep" id="a_d_1_2gitt_2_microchip_for32_2bsp___device_2varint_8hdep">
<area shape="rect" title=" " alt="" coords="1144,5,1295,45"/>
<area shape="rect" title="全局共用的标准类型表" alt="" coords="1424,5,1575,45"/>
<area shape="rect" href="_s_t_l___queue_8h.html" title="实现了STL库中的Queue" alt="" coords="20,93,197,133"/>
<area shape="rect" href="_s_t_l___stack_8h.html" title="实现了STL库中的Stack" alt="" coords="231,93,405,133"/>
<area shape="rect" href="bsp___a_t24_c00_8cpp.html" title="本类实现AT24C00的通讯" alt="" coords="410,387,613,427"/>
<area shape="rect" href="bsp___a_t24_c00_8h.html" title="本类实现AT24C00的通讯" alt="" coords="483,291,671,331"/>
<area shape="rect" href="bsp___c_r_c_8h.html" title="CRC16校验" alt="" coords="1201,93,1363,133"/>
<area shape="rect" href="bsp___digit_8h.html" title="数码管显示类" alt="" coords="636,93,797,133"/>
<area shape="rect" href="bsp___i_i_c_8h.html" title="本类实现软件IIC功能 依此类派生出其他软件IIC功能" alt="" coords="917,93,1068,133"/>
<area shape="rect" href="bsp___i_i_c___s_t_m32_8h.html" title="实现针对STM32的软件IIC类" alt="" coords="920,189,1119,229"/>
<area shape="rect" href="bsp___o_l_e_d___s_t_m32_8h.html" title="在STM32下实现OLED通信" alt="" coords="1051,291,1270,331"/>
<area shape="rect" href="bsp___m_a_x6675_8h.html" title="实现了MAX6675的驱动" alt="" coords="1760,93,1951,133"/>
<area shape="rect" href="bsp___mod_bus_8h.html" title="ModBus通信函数" alt="" coords="1401,93,1584,133"/>
<area shape="rect" href="bsp___mod_bus___s_t_m32_8h.html" title="ModBus通信基于STM32" alt="" coords="1616,181,1788,236"/>
<area shape="rect" href="bsp___p_i_d_8h.html" title="实现了PID算法" alt="" coords="2012,93,2168,133"/>
<area shape="rect" href="bsp___s_d_8h.html" title=" " alt="" coords="2217,93,2371,133"/>
<area shape="rect" href="mpu6050_8h.html" title=" " alt="" coords="2415,93,2594,133"/>
<area shape="rect" href="vartable_8h.html" title="全局向量在此生成" alt="" coords="2761,93,2920,133"/>
<area shape="rect" href="bsp___b_m_p_8h.html" title="用来构造BMP图片" alt="" coords="1117,93,1281,133"/>
<area shape="rect" href="bsp___c_r_c_8h.html" title="CRC16校验" alt="" coords="1319,93,1482,133"/>
<area shape="rect" href="bsp___calculus_8h.html" title="离散微积分" alt="" coords="1845,93,2031,133"/>
<area shape="rect" href="bsp___digit_8h.html" title="数码管显示类" alt="" coords="2091,93,2252,133"/>
<area shape="rect" href="bsp___i_i_c_8h.html" title="本类实现软件IIC功能 依此类派生出其他软件IIC功能" alt="" coords="844,93,995,133"/>
<area shape="rect" href="bsp___i_i_c___s_t_m32_8h.html" title="实现针对STM32的软件IIC类" alt="" coords="615,189,813,229"/>
<area shape="rect" href="bsp___o_l_e_d___s_t_m32_8h.html" title="在STM32下实现OLED通信" alt="" coords="982,291,1201,331"/>
<area shape="rect" href="bsp___m_a_x6675_8h.html" title="实现了MAX6675的驱动" alt="" coords="2301,93,2492,133"/>
<area shape="rect" href="bsp___mod_bus_8h.html" title="ModBus通信函数" alt="" coords="1507,93,1689,133"/>
<area shape="rect" href="bsp___mod_bus___s_t_m32_8h.html" title="ModBus通信基于STM32" alt="" coords="1701,181,1873,236"/>
<area shape="rect" href="bsp___p_i_d_8h.html" title="实现了PID算法" alt="" coords="2536,93,2692,133"/>
<area shape="rect" href="bsp___s_d_8h.html" title="操作SD卡的库" alt="" coords="2733,93,2887,133"/>
<area shape="rect" href="mpu6050_8h.html" title=" " alt="" coords="2926,93,3105,133"/>
<area shape="rect" href="vartable_8h.html" title="全局向量在此生成" alt="" coords="3268,93,3427,133"/>
<area shape="rect" href="_s_t_l___queue_8cpp.html" title="实现了STL库中的Queue" alt="" coords="5,189,196,229"/>
<area shape="rect" href="_s_t_l___stack_8cpp.html" title="实现了STL库中的Stack" alt="" coords="221,189,407,229"/>
<area shape="rect" href="bsp___c_r_c_8cpp.html" title="CRC16校验" alt="" coords="1194,189,1370,229"/>
<area shape="rect" href="bsp___mod_bus_8cpp.html" title="ModBus通信函数" alt="" coords="1394,189,1591,229"/>
<area shape="rect" href="bsp___digit_8cpp.html" title="数码管显示类" alt="" coords="533,189,708,229"/>
<area shape="rect" href="bsp___i_i_c_8cpp.html" title="本类实现软件IIC功能 依此类派生出其他软件IIC功能" alt="" coords="732,189,896,229"/>
<area shape="rect" href="bsp___i_i_c___s_t_m32_8cpp.html" title="实现针对STM32的软件IIC类" alt="" coords="764,291,976,331"/>
<area shape="rect" href="bsp___o_l_e_d___s_t_m32_8cpp.html" title="在STM32下实现OLED通信" alt="" coords="971,387,1203,427"/>
<area shape="rect" href="bsp___m_a_x6675_8cpp.html" title="实现了MAX6675的驱动" alt="" coords="1812,189,2016,229"/>
<area shape="rect" href="bsp___mod_bus___s_t_m32_8cpp.html" title="ModBus通信基于STM32" alt="" coords="1616,284,1788,339"/>
<area shape="rect" href="bsp___p_i_d_8cpp.html" title="实现了PID算法" alt="" coords="2041,189,2211,229"/>
<area shape="rect" href="bsp___s_d_8cpp.html" title="操作SD卡的库" alt="" coords="2236,189,2403,229"/>
<area shape="rect" href="mpu6050_8cpp.html" title=" " alt="" coords="2427,189,2620,229"/>
<area shape="rect" href="_callback_8cpp.html" title="全局中断在此实现" alt="" coords="2645,189,2823,229"/>
<area shape="rect" href="_main_system_8cpp.html" title="实现了一个C++库针对单片机开发" alt="" coords="2848,189,3049,229"/>
<area shape="rect" href="vartable_8cpp.html" title="全局向量在此生成" alt="" coords="3073,189,3245,229"/>
<area shape="rect" href="bsp___b_m_p_8cpp.html" title="用来构造BMP图片" alt="" coords="1077,189,1255,229"/>
<area shape="rect" href="bsp___c_r_c_8cpp.html" title="CRC16校验" alt="" coords="1279,189,1455,229"/>
<area shape="rect" href="bsp___mod_bus_8cpp.html" title="ModBus通信函数" alt="" coords="1479,189,1677,229"/>
<area shape="rect" href="bsp___calculus_8cpp.html" title="离散微积分" alt="" coords="1897,189,2096,229"/>
<area shape="rect" href="bsp___digit_8cpp.html" title="数码管显示类" alt="" coords="2120,189,2295,229"/>
<area shape="rect" href="bsp___i_i_c_8cpp.html" title="本类实现软件IIC功能 依此类派生出其他软件IIC功能" alt="" coords="837,189,1001,229"/>
<area shape="rect" href="bsp___i_i_c___s_t_m32_8cpp.html" title="实现针对STM32的软件IIC类" alt="" coords="695,291,907,331"/>
<area shape="rect" href="bsp___o_l_e_d___s_t_m32_8cpp.html" title="在STM32下实现OLED通信" alt="" coords="902,387,1134,427"/>
<area shape="rect" href="bsp___m_a_x6675_8cpp.html" title="实现了MAX6675的驱动" alt="" coords="2319,189,2523,229"/>
<area shape="rect" href="bsp___mod_bus___s_t_m32_8cpp.html" title="ModBus通信基于STM32" alt="" coords="1701,284,1873,339"/>
<area shape="rect" href="bsp___p_i_d_8cpp.html" title="实现了PID算法" alt="" coords="2547,189,2718,229"/>
<area shape="rect" href="bsp___s_d_8cpp.html" title="操作SD卡的库" alt="" coords="2743,189,2909,229"/>
<area shape="rect" href="mpu6050_8cpp.html" title=" " alt="" coords="2933,189,3127,229"/>
<area shape="rect" href="_callback_8cpp.html" title="全局中断在此实现" alt="" coords="3151,189,3330,229"/>
<area shape="rect" href="_main_system_8cpp.html" title="实现了一个C++库针对单片机开发" alt="" coords="3355,189,3556,229"/>
<area shape="rect" href="vartable_8cpp.html" title="全局向量在此生成" alt="" coords="3580,189,3752,229"/>
</map>
</div>
</div>
<p><a href="varint_8h_source.html">浏览源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="define-members" name="define-members"></a>
宏定义</h2></td></tr>
<tr class="memitem:ad35af1fbc60fcc217f7e3c6bae2ba656"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#ad35af1fbc60fcc217f7e3c6bae2ba656">P8</a>(x)&#160;&#160;&#160;((<a class="el" href="varint_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>*)(&amp;(x)))</td></tr>
<tr class="memdesc:ad35af1fbc60fcc217f7e3c6bae2ba656"><td class="mdescLeft">&#160;</td><td class="mdescRight">强制转换变成u8的指针 <a href="varint_8h.html#ad35af1fbc60fcc217f7e3c6bae2ba656">更多...</a><br /></td></tr>
<tr class="separator:ad35af1fbc60fcc217f7e3c6bae2ba656"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71e9586b24447c7ca7bc353aa86da852"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a71e9586b24447c7ca7bc353aa86da852">Pn8</a>(x, y)&#160;&#160;&#160;(((<a class="el" href="varint_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>*)(&amp;(x)))[y])</td></tr>
<tr class="memdesc:a71e9586b24447c7ca7bc353aa86da852"><td class="mdescLeft">&#160;</td><td class="mdescRight">强制转换变成u8的数组 <a href="varint_8h.html#a71e9586b24447c7ca7bc353aa86da852">更多...</a><br /></td></tr>
<tr class="separator:a71e9586b24447c7ca7bc353aa86da852"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90e13f6172ebc6d6b8df6ed9a443491f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a90e13f6172ebc6d6b8df6ed9a443491f">P16</a>(x)&#160;&#160;&#160;((<a class="el" href="varint_8h.html#ace9d960e74685e2cd84b36132dbbf8aa">u16</a>*)(&amp;(x)))</td></tr>
<tr class="memdesc:a90e13f6172ebc6d6b8df6ed9a443491f"><td class="mdescLeft">&#160;</td><td class="mdescRight">强制转换变成u16的指针 <a href="varint_8h.html#a90e13f6172ebc6d6b8df6ed9a443491f">更多...</a><br /></td></tr>
<tr class="separator:a90e13f6172ebc6d6b8df6ed9a443491f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff980abb3664242448c35e7c94df9457"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#aff980abb3664242448c35e7c94df9457">Pn16</a>(x, y)&#160;&#160;&#160;(((<a class="el" href="varint_8h.html#ace9d960e74685e2cd84b36132dbbf8aa">u16</a>*)(&amp;(x)))[y])</td></tr>
<tr class="memdesc:aff980abb3664242448c35e7c94df9457"><td class="mdescLeft">&#160;</td><td class="mdescRight">强制转换变成u16的数组 <a href="varint_8h.html#aff980abb3664242448c35e7c94df9457">更多...</a><br /></td></tr>
<tr class="separator:aff980abb3664242448c35e7c94df9457"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a495d48b6b1b59a2ad797b10d9da431ff"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a495d48b6b1b59a2ad797b10d9da431ff">P32</a>(x)&#160;&#160;&#160;((<a class="el" href="varint_8h.html#afaa62991928fb9fb18ff0db62a040aba">u32</a>*)(&amp;(x)))</td></tr>
<tr class="memdesc:a495d48b6b1b59a2ad797b10d9da431ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">强制转换变成u32的指针 <a href="varint_8h.html#a495d48b6b1b59a2ad797b10d9da431ff">更多...</a><br /></td></tr>
<tr class="separator:a495d48b6b1b59a2ad797b10d9da431ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc92d7430c7b945896332c2e2540a52a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#adc92d7430c7b945896332c2e2540a52a">Pn32</a>(x, y)&#160;&#160;&#160;(((<a class="el" href="varint_8h.html#afaa62991928fb9fb18ff0db62a040aba">u32</a>*)(&amp;(x)))[y])</td></tr>
<tr class="memdesc:adc92d7430c7b945896332c2e2540a52a"><td class="mdescLeft">&#160;</td><td class="mdescRight">强制转换变成u32的数组 <a href="varint_8h.html#adc92d7430c7b945896332c2e2540a52a">更多...</a><br /></td></tr>
<tr class="separator:adc92d7430c7b945896332c2e2540a52a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada574ddd6b3c52cf691b29e6efc7a817"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#ada574ddd6b3c52cf691b29e6efc7a817">DelLb</a>(x)&#160;&#160;&#160;(x &amp; (x - 1))</td></tr>
<tr class="memdesc:ada574ddd6b3c52cf691b29e6efc7a817"><td class="mdescLeft">&#160;</td><td class="mdescRight">移除最低位的1 <a href="varint_8h.html#ada574ddd6b3c52cf691b29e6efc7a817">更多...</a><br /></td></tr>
<tr class="separator:ada574ddd6b3c52cf691b29e6efc7a817"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4130fb740c8bd3c4986b2fe496c74d78"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a4130fb740c8bd3c4986b2fe496c74d78">qDelLb</a>(x)&#160;&#160;&#160;(x=(x &amp; (x - 1)))</td></tr>
<tr class="memdesc:a4130fb740c8bd3c4986b2fe496c74d78"><td class="mdescLeft">&#160;</td><td class="mdescRight">移除并保存最低位的1 <a href="varint_8h.html#a4130fb740c8bd3c4986b2fe496c74d78">更多...</a><br /></td></tr>
<tr class="separator:a4130fb740c8bd3c4986b2fe496c74d78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a338f1c6d28b8ee314ea8b33df5c6052e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a338f1c6d28b8ee314ea8b33df5c6052e">toBool</a>(x)&#160;&#160;&#160;(x!=0)</td></tr>
<tr class="memdesc:a338f1c6d28b8ee314ea8b33df5c6052e"><td class="mdescLeft">&#160;</td><td class="mdescRight">数布尔化 <a href="varint_8h.html#a338f1c6d28b8ee314ea8b33df5c6052e">更多...</a><br /></td></tr>
<tr class="separator:a338f1c6d28b8ee314ea8b33df5c6052e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af88c9f4171df59e6e0aa2db71bf9f250"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#af88c9f4171df59e6e0aa2db71bf9f250">uBit</a>(x, y)&#160;&#160;&#160;(x&amp;(1&lt;&lt;y))</td></tr>
<tr class="memdesc:af88c9f4171df59e6e0aa2db71bf9f250"><td class="mdescLeft">&#160;</td><td class="mdescRight">挑选某一位 <a href="varint_8h.html#af88c9f4171df59e6e0aa2db71bf9f250">更多...</a><br /></td></tr>
<tr class="separator:af88c9f4171df59e6e0aa2db71bf9f250"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac123183daf1150b8b675c96cfeae4314"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#ac123183daf1150b8b675c96cfeae4314">tBit</a>(x, y)&#160;&#160;&#160;(<a class="el" href="varint_8h.html#a338f1c6d28b8ee314ea8b33df5c6052e">toBool</a>(<a class="el" href="varint_8h.html#af88c9f4171df59e6e0aa2db71bf9f250">uBit</a>(x,y)))</td></tr>
<tr class="memdesc:ac123183daf1150b8b675c96cfeae4314"><td class="mdescLeft">&#160;</td><td class="mdescRight">挑选某一位并且布尔化 <a href="varint_8h.html#ac123183daf1150b8b675c96cfeae4314">更多...</a><br /></td></tr>
<tr class="separator:ac123183daf1150b8b675c96cfeae4314"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1b4c6a5140aae5adbc14792ed9cbaf5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#aa1b4c6a5140aae5adbc14792ed9cbaf5">sBit</a>(x, y)&#160;&#160;&#160;(x|(1&lt;&lt;y))</td></tr>
<tr class="memdesc:aa1b4c6a5140aae5adbc14792ed9cbaf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">置高某一位 <a href="varint_8h.html#aa1b4c6a5140aae5adbc14792ed9cbaf5">更多...</a><br /></td></tr>
<tr class="separator:aa1b4c6a5140aae5adbc14792ed9cbaf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c0c97a8768383af5f921a0496bb7e6c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a6c0c97a8768383af5f921a0496bb7e6c">rBit</a>(x, y)&#160;&#160;&#160;(x&amp;(~(1&lt;&lt;y)))</td></tr>
<tr class="memdesc:a6c0c97a8768383af5f921a0496bb7e6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">拉低某一位 <a href="varint_8h.html#a6c0c97a8768383af5f921a0496bb7e6c">更多...</a><br /></td></tr>
<tr class="separator:a6c0c97a8768383af5f921a0496bb7e6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cce0b9aa61d54efc42512f4c7796455"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a5cce0b9aa61d54efc42512f4c7796455">mBit</a>(x, y, z)&#160;&#160;&#160;((z)?<a class="el" href="varint_8h.html#aa1b4c6a5140aae5adbc14792ed9cbaf5">sBit</a>(x,y):<a class="el" href="varint_8h.html#a6c0c97a8768383af5f921a0496bb7e6c">rBit</a>(x,y))</td></tr>
<tr class="memdesc:a5cce0b9aa61d54efc42512f4c7796455"><td class="mdescLeft">&#160;</td><td class="mdescRight">选择性拉高拉低某一位 <a href="varint_8h.html#a5cce0b9aa61d54efc42512f4c7796455">更多...</a><br /></td></tr>
<tr class="separator:a5cce0b9aa61d54efc42512f4c7796455"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ae6889c9eb9c27afb4395ef1d06eec7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a7ae6889c9eb9c27afb4395ef1d06eec7">LpAdd</a>(x, y)&#160;&#160;&#160;((x+1)&lt;y?x+1:0)</td></tr>
<tr class="memdesc:a7ae6889c9eb9c27afb4395ef1d06eec7"><td class="mdescLeft">&#160;</td><td class="mdescRight">带最高限制的加法 <a href="varint_8h.html#a7ae6889c9eb9c27afb4395ef1d06eec7">更多...</a><br /></td></tr>
<tr class="separator:a7ae6889c9eb9c27afb4395ef1d06eec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8c84f28a4c47bc30bbecb56d1469fd2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#af8c84f28a4c47bc30bbecb56d1469fd2">LpDec</a>(x, y)&#160;&#160;&#160;(x&gt;0?x-1:y-1)</td></tr>
<tr class="memdesc:af8c84f28a4c47bc30bbecb56d1469fd2"><td class="mdescLeft">&#160;</td><td class="mdescRight">带最低限制的减法 <a href="varint_8h.html#af8c84f28a4c47bc30bbecb56d1469fd2">更多...</a><br /></td></tr>
<tr class="separator:af8c84f28a4c47bc30bbecb56d1469fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5268cd1ab382ef2574c21c40590d6bc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#ac5268cd1ab382ef2574c21c40590d6bc">qLpAdd</a>(x, y)&#160;&#160;&#160;(x=(x+1)&lt;y?x+1:0)</td></tr>
<tr class="memdesc:ac5268cd1ab382ef2574c21c40590d6bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">带最高限制的自增 <a href="varint_8h.html#ac5268cd1ab382ef2574c21c40590d6bc">更多...</a><br /></td></tr>
<tr class="separator:ac5268cd1ab382ef2574c21c40590d6bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d3d574f28028e4705bcd10ecfdadeaa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a6d3d574f28028e4705bcd10ecfdadeaa">qLpDec</a>(x, y)&#160;&#160;&#160;(x=x&gt;0?x-1:y-1)</td></tr>
<tr class="memdesc:a6d3d574f28028e4705bcd10ecfdadeaa"><td class="mdescLeft">&#160;</td><td class="mdescRight">带最低限制的自减 <a href="varint_8h.html#a6d3d574f28028e4705bcd10ecfdadeaa">更多...</a><br /></td></tr>
<tr class="separator:a6d3d574f28028e4705bcd10ecfdadeaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="typedef-members" name="typedef-members"></a>
类型定义</h2></td></tr>
<tr class="memitem:a92c50087ca0e64fa93fc59402c55f8ca"><td class="memItemLeft" align="right" valign="top">typedef uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a></td></tr>
@@ -183,6 +248,533 @@ varint.h 的引用(Include)关系图:</div>
<tr class="memdesc:aeffd8dafd889cdd80398ffcbb37cd7ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">64位有符号易变类型 <a href="varint_8h.html#aeffd8dafd889cdd80398ffcbb37cd7ef">更多...</a><br /></td></tr>
<tr class="separator:aeffd8dafd889cdd80398ffcbb37cd7ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p >全局共用的标准类型表 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a> 中定义.</p>
</div><h2 class="groupheader">宏定义说明</h2>
<a id="ada574ddd6b3c52cf691b29e6efc7a817" name="ada574ddd6b3c52cf691b29e6efc7a817"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada574ddd6b3c52cf691b29e6efc7a817">&#9670;&#160;</a></span>DelLb</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DelLb</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x</td><td>)</td>
<td>&#160;&#160;&#160;(x &amp; (x - 1))</td>
</tr>
</table>
</div><div class="memdoc">
<p>移除最低位的1 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00069">69</a> 行定义.</p>
</div>
</div>
<a id="a7ae6889c9eb9c27afb4395ef1d06eec7" name="a7ae6889c9eb9c27afb4395ef1d06eec7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ae6889c9eb9c27afb4395ef1d06eec7">&#9670;&#160;</a></span>LpAdd</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define LpAdd</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;((x+1)&lt;y?x+1:0)</td>
</tr>
</table>
</div><div class="memdoc">
<p>带最高限制的加法 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00080">80</a> 行定义.</p>
</div>
</div>
<a id="af8c84f28a4c47bc30bbecb56d1469fd2" name="af8c84f28a4c47bc30bbecb56d1469fd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8c84f28a4c47bc30bbecb56d1469fd2">&#9670;&#160;</a></span>LpDec</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define LpDec</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(x&gt;0?x-1:y-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>带最低限制的减法 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00081">81</a> 行定义.</p>
</div>
</div>
<a id="a5cce0b9aa61d54efc42512f4c7796455" name="a5cce0b9aa61d54efc42512f4c7796455"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5cce0b9aa61d54efc42512f4c7796455">&#9670;&#160;</a></span>mBit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define mBit</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">z&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;((z)?<a class="el" href="varint_8h.html#aa1b4c6a5140aae5adbc14792ed9cbaf5">sBit</a>(x,y):<a class="el" href="varint_8h.html#a6c0c97a8768383af5f921a0496bb7e6c">rBit</a>(x,y))</td>
</tr>
</table>
</div><div class="memdoc">
<p>选择性拉高拉低某一位 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00078">78</a> 行定义.</p>
</div>
</div>
<a id="a90e13f6172ebc6d6b8df6ed9a443491f" name="a90e13f6172ebc6d6b8df6ed9a443491f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90e13f6172ebc6d6b8df6ed9a443491f">&#9670;&#160;</a></span>P16</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define P16</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="varint_8h.html#ace9d960e74685e2cd84b36132dbbf8aa">u16</a>*)(&amp;(x)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>强制转换变成u16的指针 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00064">64</a> 行定义.</p>
</div>
</div>
<a id="a495d48b6b1b59a2ad797b10d9da431ff" name="a495d48b6b1b59a2ad797b10d9da431ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a495d48b6b1b59a2ad797b10d9da431ff">&#9670;&#160;</a></span>P32</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define P32</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="varint_8h.html#afaa62991928fb9fb18ff0db62a040aba">u32</a>*)(&amp;(x)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>强制转换变成u32的指针 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00066">66</a> 行定义.</p>
</div>
</div>
<a id="ad35af1fbc60fcc217f7e3c6bae2ba656" name="ad35af1fbc60fcc217f7e3c6bae2ba656"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad35af1fbc60fcc217f7e3c6bae2ba656">&#9670;&#160;</a></span>P8</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define P8</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x</td><td>)</td>
<td>&#160;&#160;&#160;((<a class="el" href="varint_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>*)(&amp;(x)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>强制转换变成u8的指针 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00062">62</a> 行定义.</p>
</div>
</div>
<a id="aff980abb3664242448c35e7c94df9457" name="aff980abb3664242448c35e7c94df9457"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff980abb3664242448c35e7c94df9457">&#9670;&#160;</a></span>Pn16</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define Pn16</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(((<a class="el" href="varint_8h.html#ace9d960e74685e2cd84b36132dbbf8aa">u16</a>*)(&amp;(x)))[y])</td>
</tr>
</table>
</div><div class="memdoc">
<p>强制转换变成u16的数组 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00065">65</a> 行定义.</p>
</div>
</div>
<a id="adc92d7430c7b945896332c2e2540a52a" name="adc92d7430c7b945896332c2e2540a52a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc92d7430c7b945896332c2e2540a52a">&#9670;&#160;</a></span>Pn32</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define Pn32</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(((<a class="el" href="varint_8h.html#afaa62991928fb9fb18ff0db62a040aba">u32</a>*)(&amp;(x)))[y])</td>
</tr>
</table>
</div><div class="memdoc">
<p>强制转换变成u32的数组 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00067">67</a> 行定义.</p>
</div>
</div>
<a id="a71e9586b24447c7ca7bc353aa86da852" name="a71e9586b24447c7ca7bc353aa86da852"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71e9586b24447c7ca7bc353aa86da852">&#9670;&#160;</a></span>Pn8</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define Pn8</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(((<a class="el" href="varint_8h.html#a92c50087ca0e64fa93fc59402c55f8ca">u8</a>*)(&amp;(x)))[y])</td>
</tr>
</table>
</div><div class="memdoc">
<p>强制转换变成u8的数组 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00063">63</a> 行定义.</p>
</div>
</div>
<a id="a4130fb740c8bd3c4986b2fe496c74d78" name="a4130fb740c8bd3c4986b2fe496c74d78"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4130fb740c8bd3c4986b2fe496c74d78">&#9670;&#160;</a></span>qDelLb</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define qDelLb</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x</td><td>)</td>
<td>&#160;&#160;&#160;(x=(x &amp; (x - 1)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>移除并保存最低位的1 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00070">70</a> 行定义.</p>
</div>
</div>
<a id="ac5268cd1ab382ef2574c21c40590d6bc" name="ac5268cd1ab382ef2574c21c40590d6bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5268cd1ab382ef2574c21c40590d6bc">&#9670;&#160;</a></span>qLpAdd</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define qLpAdd</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(x=(x+1)&lt;y?x+1:0)</td>
</tr>
</table>
</div><div class="memdoc">
<p>带最高限制的自增 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00082">82</a> 行定义.</p>
</div>
</div>
<a id="a6d3d574f28028e4705bcd10ecfdadeaa" name="a6d3d574f28028e4705bcd10ecfdadeaa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6d3d574f28028e4705bcd10ecfdadeaa">&#9670;&#160;</a></span>qLpDec</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define qLpDec</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(x=x&gt;0?x-1:y-1)</td>
</tr>
</table>
</div><div class="memdoc">
<p>带最低限制的自减 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00084">84</a> 行定义.</p>
</div>
</div>
<a id="a6c0c97a8768383af5f921a0496bb7e6c" name="a6c0c97a8768383af5f921a0496bb7e6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c0c97a8768383af5f921a0496bb7e6c">&#9670;&#160;</a></span>rBit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define rBit</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(x&amp;(~(1&lt;&lt;y)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>拉低某一位 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00077">77</a> 行定义.</p>
</div>
</div>
<a id="aa1b4c6a5140aae5adbc14792ed9cbaf5" name="aa1b4c6a5140aae5adbc14792ed9cbaf5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1b4c6a5140aae5adbc14792ed9cbaf5">&#9670;&#160;</a></span>sBit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define sBit</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(x|(1&lt;&lt;y))</td>
</tr>
</table>
</div><div class="memdoc">
<p>置高某一位 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00076">76</a> 行定义.</p>
</div>
</div>
<a id="ac123183daf1150b8b675c96cfeae4314" name="ac123183daf1150b8b675c96cfeae4314"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac123183daf1150b8b675c96cfeae4314">&#9670;&#160;</a></span>tBit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define tBit</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(<a class="el" href="varint_8h.html#a338f1c6d28b8ee314ea8b33df5c6052e">toBool</a>(<a class="el" href="varint_8h.html#af88c9f4171df59e6e0aa2db71bf9f250">uBit</a>(x,y)))</td>
</tr>
</table>
</div><div class="memdoc">
<p>挑选某一位并且布尔化 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00074">74</a> 行定义.</p>
</div>
</div>
<a id="a338f1c6d28b8ee314ea8b33df5c6052e" name="a338f1c6d28b8ee314ea8b33df5c6052e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a338f1c6d28b8ee314ea8b33df5c6052e">&#9670;&#160;</a></span>toBool</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define toBool</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x</td><td>)</td>
<td>&#160;&#160;&#160;(x!=0)</td>
</tr>
</table>
</div><div class="memdoc">
<p>数布尔化 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00072">72</a> 行定义.</p>
</div>
</div>
<a id="af88c9f4171df59e6e0aa2db71bf9f250" name="af88c9f4171df59e6e0aa2db71bf9f250"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af88c9f4171df59e6e0aa2db71bf9f250">&#9670;&#160;</a></span>uBit</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define uBit</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">x, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">y&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;(x&amp;(1&lt;&lt;y))</td>
</tr>
</table>
</div><div class="memdoc">
<p>挑选某一位 </p>
<p class="definition">在文件 <a class="el" href="varint_8h_source.html">varint.h</a><a class="el" href="varint_8h_source.html#l00073">73</a> 行定义.</p>
</div>
</div>
<h2 class="groupheader">类型定义说明</h2>
<a id="ad309dbcaeea13aa602d686964156ea0b" name="ad309dbcaeea13aa602d686964156ea0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad309dbcaeea13aa602d686964156ea0b">&#9670;&#160;</a></span>i16</h2>