\hypertarget{varint_8h}{}\doxysection{D\+:/gitt/\+Microchip\+For32/bsp\+\_\+\+Device/varint.h 文件参考}
\label{varint_8h}\index{D:/gitt/MicrochipFor32/bsp\_Device/varint.h@{D:/gitt/MicrochipFor32/bsp\_Device/varint.h}}


全局共用的标准类型表  


{\ttfamily \#include \char`\"{}stdint.\+h\char`\"{}}\newline
varint.\+h 的引用(Include)关系图\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=193pt]{varint_8h__incl}
\end{center}
\end{figure}
此图展示该文件直接或间接的被哪些文件引用了\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{varint_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsection*{宏定义}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{varint_8h_ad35af1fbc60fcc217f7e3c6bae2ba656}{P8}}(x)~((\mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}}$\ast$)(\&(x)))
\begin{DoxyCompactList}\small\item\em 强制转换变成u8的指针 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a71e9586b24447c7ca7bc353aa86da852}{Pn8}}(x,  y)~(((\mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}}$\ast$)(\&(x)))\mbox{[}y\mbox{]})
\begin{DoxyCompactList}\small\item\em 强制转换变成u8的数组 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a90e13f6172ebc6d6b8df6ed9a443491f}{P16}}(x)~((\mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}}$\ast$)(\&(x)))
\begin{DoxyCompactList}\small\item\em 强制转换变成u16的指针 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_aff980abb3664242448c35e7c94df9457}{Pn16}}(x,  y)~(((\mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}}$\ast$)(\&(x)))\mbox{[}y\mbox{]})
\begin{DoxyCompactList}\small\item\em 强制转换变成u16的数组 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a495d48b6b1b59a2ad797b10d9da431ff}{P32}}(x)~((\mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}}$\ast$)(\&(x)))
\begin{DoxyCompactList}\small\item\em 强制转换变成u32的指针 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_adc92d7430c7b945896332c2e2540a52a}{Pn32}}(x,  y)~(((\mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}}$\ast$)(\&(x)))\mbox{[}y\mbox{]})
\begin{DoxyCompactList}\small\item\em 强制转换变成u32的数组 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_ada574ddd6b3c52cf691b29e6efc7a817}{Del\+Lb}}(x)~(x \& (x -\/ 1))
\begin{DoxyCompactList}\small\item\em 移除最低位的1 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a4130fb740c8bd3c4986b2fe496c74d78}{q\+Del\+Lb}}(x)~(x=(x \& (x -\/ 1)))
\begin{DoxyCompactList}\small\item\em 移除并保存最低位的1 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a338f1c6d28b8ee314ea8b33df5c6052e}{to\+Bool}}(x)~(x!=0)
\begin{DoxyCompactList}\small\item\em 数布尔化 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_af88c9f4171df59e6e0aa2db71bf9f250}{u\+Bit}}(x,  y)~(x\&(1$<$$<$y))
\begin{DoxyCompactList}\small\item\em 挑选某一位 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_ac123183daf1150b8b675c96cfeae4314}{t\+Bit}}(x,  y)~(\mbox{\hyperlink{varint_8h_a338f1c6d28b8ee314ea8b33df5c6052e}{to\+Bool}}(\mbox{\hyperlink{varint_8h_af88c9f4171df59e6e0aa2db71bf9f250}{u\+Bit}}(x,y)))
\begin{DoxyCompactList}\small\item\em 挑选某一位并且布尔化 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_aa1b4c6a5140aae5adbc14792ed9cbaf5}{s\+Bit}}(x,  y)~(x$\vert$(1$<$$<$y))
\begin{DoxyCompactList}\small\item\em 置高某一位 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a6c0c97a8768383af5f921a0496bb7e6c}{r\+Bit}}(x,  y)~(x\&($\sim$(1$<$$<$y)))
\begin{DoxyCompactList}\small\item\em 拉低某一位 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a5cce0b9aa61d54efc42512f4c7796455}{m\+Bit}}(x,  y,  z)~((z)?\mbox{\hyperlink{varint_8h_aa1b4c6a5140aae5adbc14792ed9cbaf5}{s\+Bit}}(x,y)\+:\mbox{\hyperlink{varint_8h_a6c0c97a8768383af5f921a0496bb7e6c}{r\+Bit}}(x,y))
\begin{DoxyCompactList}\small\item\em 选择性拉高拉低某一位 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a7ae6889c9eb9c27afb4395ef1d06eec7}{Lp\+Add}}(x,  y)~((x+1)$<$y?x+1\+:0)
\begin{DoxyCompactList}\small\item\em 带最高限制的加法 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_af8c84f28a4c47bc30bbecb56d1469fd2}{Lp\+Dec}}(x,  y)~(x$>$0?x-\/1\+:y-\/1)
\begin{DoxyCompactList}\small\item\em 带最低限制的减法 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_ac5268cd1ab382ef2574c21c40590d6bc}{q\+Lp\+Add}}(x,  y)~(x=(x+1)$<$y?x+1\+:0)
\begin{DoxyCompactList}\small\item\em 带最高限制的自增 \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{varint_8h_a6d3d574f28028e4705bcd10ecfdadeaa}{q\+Lp\+Dec}}(x,  y)~(x=x$>$0?x-\/1\+:y-\/1)
\begin{DoxyCompactList}\small\item\em 带最低限制的自减 \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{类型定义}
\begin{DoxyCompactItemize}
\item 
typedef uint8\+\_\+t \mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}}
\begin{DoxyCompactList}\small\item\em 8位无符号数类型 \end{DoxyCompactList}\item 
typedef uint16\+\_\+t \mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}}
\begin{DoxyCompactList}\small\item\em 16位无符号数类型 \end{DoxyCompactList}\item 
typedef uint32\+\_\+t \mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}}
\begin{DoxyCompactList}\small\item\em 32位无符号数类型 \end{DoxyCompactList}\item 
typedef uint64\+\_\+t \mbox{\hyperlink{varint_8h_a3f7e2bcbb0b4c338f3c4f6c937cd4234}{u64}}
\begin{DoxyCompactList}\small\item\em 64位无符号数类型 \end{DoxyCompactList}\item 
typedef int8\+\_\+t \mbox{\hyperlink{varint_8h_ae3702327b5f47e83b431e22b33da7b58}{i8}}
\begin{DoxyCompactList}\small\item\em 8位有符号数类型 \end{DoxyCompactList}\item 
typedef int16\+\_\+t \mbox{\hyperlink{varint_8h_ad309dbcaeea13aa602d686964156ea0b}{i16}}
\begin{DoxyCompactList}\small\item\em 16位有符号数类型 \end{DoxyCompactList}\item 
typedef int32\+\_\+t \mbox{\hyperlink{varint_8h_a48d6cd8e4135fb2ff7e7f2dac84089ec}{i32}}
\begin{DoxyCompactList}\small\item\em 32位有符号数类型 \end{DoxyCompactList}\item 
typedef int64\+\_\+t \mbox{\hyperlink{varint_8h_a85cb35fbe5bf2961d7ad5f26814a91a2}{i64}}
\begin{DoxyCompactList}\small\item\em 64位有符号数类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}} \mbox{\hyperlink{varint_8h_a1a2a3100a902c32a55d8b08915bce044}{vu8}}
\begin{DoxyCompactList}\small\item\em 8位无符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}} \mbox{\hyperlink{varint_8h_a677aa1edce4bbb53741b1cc24eb4c035}{vu16}}
\begin{DoxyCompactList}\small\item\em 16位无符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}} \mbox{\hyperlink{varint_8h_abcdd5d61f51cb4c472ac6637916cf72a}{vu32}}
\begin{DoxyCompactList}\small\item\em 32位无符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_a3f7e2bcbb0b4c338f3c4f6c937cd4234}{u64}} \mbox{\hyperlink{varint_8h_ace392b4d1c3911331b2fe5ddc99fdcba}{vu64}}
\begin{DoxyCompactList}\small\item\em 64位无符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_ae3702327b5f47e83b431e22b33da7b58}{i8}} \mbox{\hyperlink{varint_8h_ad9f0c7145e15b7b470a138dae48c178d}{vi8}}
\begin{DoxyCompactList}\small\item\em 8位有符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_ad309dbcaeea13aa602d686964156ea0b}{i16}} \mbox{\hyperlink{varint_8h_ab1725f18a2ec2964f4bc0499527e4c5d}{vi16}}
\begin{DoxyCompactList}\small\item\em 16位有符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_a48d6cd8e4135fb2ff7e7f2dac84089ec}{i32}} \mbox{\hyperlink{varint_8h_a8b81ac6660e74bec836c0a4e0a0b6450}{vi32}}
\begin{DoxyCompactList}\small\item\em 32位有符号易变类型 \end{DoxyCompactList}\item 
typedef volatile \mbox{\hyperlink{varint_8h_a85cb35fbe5bf2961d7ad5f26814a91a2}{i64}} \mbox{\hyperlink{varint_8h_aeffd8dafd889cdd80398ffcbb37cd7ef}{vi64}}
\begin{DoxyCompactList}\small\item\em 64位有符号易变类型 \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{详细描述}
全局共用的标准类型表 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 中定义.



\doxysubsection{宏定义说明}
\mbox{\Hypertarget{varint_8h_ada574ddd6b3c52cf691b29e6efc7a817}\label{varint_8h_ada574ddd6b3c52cf691b29e6efc7a817}} 
\index{varint.h@{varint.h}!DelLb@{DelLb}}
\index{DelLb@{DelLb}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{DelLb}{DelLb}}
{\footnotesize\ttfamily \#define Del\+Lb(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~(x \& (x -\/ 1))}



移除最低位的1 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00069}{69}} 行定义.

\mbox{\Hypertarget{varint_8h_a7ae6889c9eb9c27afb4395ef1d06eec7}\label{varint_8h_a7ae6889c9eb9c27afb4395ef1d06eec7}} 
\index{varint.h@{varint.h}!LpAdd@{LpAdd}}
\index{LpAdd@{LpAdd}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{LpAdd}{LpAdd}}
{\footnotesize\ttfamily \#define Lp\+Add(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~((x+1)$<$y?x+1\+:0)}



带最高限制的加法 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00080}{80}} 行定义.

\mbox{\Hypertarget{varint_8h_af8c84f28a4c47bc30bbecb56d1469fd2}\label{varint_8h_af8c84f28a4c47bc30bbecb56d1469fd2}} 
\index{varint.h@{varint.h}!LpDec@{LpDec}}
\index{LpDec@{LpDec}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{LpDec}{LpDec}}
{\footnotesize\ttfamily \#define Lp\+Dec(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(x$>$0?x-\/1\+:y-\/1)}



带最低限制的减法 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00081}{81}} 行定义.

\mbox{\Hypertarget{varint_8h_a5cce0b9aa61d54efc42512f4c7796455}\label{varint_8h_a5cce0b9aa61d54efc42512f4c7796455}} 
\index{varint.h@{varint.h}!mBit@{mBit}}
\index{mBit@{mBit}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{mBit}{mBit}}
{\footnotesize\ttfamily \#define m\+Bit(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y,  }\item[{}]{z }\end{DoxyParamCaption})~((z)?\mbox{\hyperlink{varint_8h_aa1b4c6a5140aae5adbc14792ed9cbaf5}{s\+Bit}}(x,y)\+:\mbox{\hyperlink{varint_8h_a6c0c97a8768383af5f921a0496bb7e6c}{r\+Bit}}(x,y))}



选择性拉高拉低某一位 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00078}{78}} 行定义.

\mbox{\Hypertarget{varint_8h_a90e13f6172ebc6d6b8df6ed9a443491f}\label{varint_8h_a90e13f6172ebc6d6b8df6ed9a443491f}} 
\index{varint.h@{varint.h}!P16@{P16}}
\index{P16@{P16}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{P16}{P16}}
{\footnotesize\ttfamily \#define P16(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~((\mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}}$\ast$)(\&(x)))}



强制转换变成u16的指针 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00064}{64}} 行定义.

\mbox{\Hypertarget{varint_8h_a495d48b6b1b59a2ad797b10d9da431ff}\label{varint_8h_a495d48b6b1b59a2ad797b10d9da431ff}} 
\index{varint.h@{varint.h}!P32@{P32}}
\index{P32@{P32}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{P32}{P32}}
{\footnotesize\ttfamily \#define P32(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~((\mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}}$\ast$)(\&(x)))}



强制转换变成u32的指针 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00066}{66}} 行定义.

\mbox{\Hypertarget{varint_8h_ad35af1fbc60fcc217f7e3c6bae2ba656}\label{varint_8h_ad35af1fbc60fcc217f7e3c6bae2ba656}} 
\index{varint.h@{varint.h}!P8@{P8}}
\index{P8@{P8}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{P8}{P8}}
{\footnotesize\ttfamily \#define P8(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~((\mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}}$\ast$)(\&(x)))}



强制转换变成u8的指针 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00062}{62}} 行定义.

\mbox{\Hypertarget{varint_8h_aff980abb3664242448c35e7c94df9457}\label{varint_8h_aff980abb3664242448c35e7c94df9457}} 
\index{varint.h@{varint.h}!Pn16@{Pn16}}
\index{Pn16@{Pn16}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{Pn16}{Pn16}}
{\footnotesize\ttfamily \#define Pn16(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(((\mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}}$\ast$)(\&(x)))\mbox{[}y\mbox{]})}



强制转换变成u16的数组 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00065}{65}} 行定义.

\mbox{\Hypertarget{varint_8h_adc92d7430c7b945896332c2e2540a52a}\label{varint_8h_adc92d7430c7b945896332c2e2540a52a}} 
\index{varint.h@{varint.h}!Pn32@{Pn32}}
\index{Pn32@{Pn32}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{Pn32}{Pn32}}
{\footnotesize\ttfamily \#define Pn32(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(((\mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}}$\ast$)(\&(x)))\mbox{[}y\mbox{]})}



强制转换变成u32的数组 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00067}{67}} 行定义.

\mbox{\Hypertarget{varint_8h_a71e9586b24447c7ca7bc353aa86da852}\label{varint_8h_a71e9586b24447c7ca7bc353aa86da852}} 
\index{varint.h@{varint.h}!Pn8@{Pn8}}
\index{Pn8@{Pn8}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{Pn8}{Pn8}}
{\footnotesize\ttfamily \#define Pn8(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(((\mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}}$\ast$)(\&(x)))\mbox{[}y\mbox{]})}



强制转换变成u8的数组 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00063}{63}} 行定义.

\mbox{\Hypertarget{varint_8h_a4130fb740c8bd3c4986b2fe496c74d78}\label{varint_8h_a4130fb740c8bd3c4986b2fe496c74d78}} 
\index{varint.h@{varint.h}!qDelLb@{qDelLb}}
\index{qDelLb@{qDelLb}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{qDelLb}{qDelLb}}
{\footnotesize\ttfamily \#define q\+Del\+Lb(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~(x=(x \& (x -\/ 1)))}



移除并保存最低位的1 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00070}{70}} 行定义.

\mbox{\Hypertarget{varint_8h_ac5268cd1ab382ef2574c21c40590d6bc}\label{varint_8h_ac5268cd1ab382ef2574c21c40590d6bc}} 
\index{varint.h@{varint.h}!qLpAdd@{qLpAdd}}
\index{qLpAdd@{qLpAdd}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{qLpAdd}{qLpAdd}}
{\footnotesize\ttfamily \#define q\+Lp\+Add(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(x=(x+1)$<$y?x+1\+:0)}



带最高限制的自增 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00082}{82}} 行定义.

\mbox{\Hypertarget{varint_8h_a6d3d574f28028e4705bcd10ecfdadeaa}\label{varint_8h_a6d3d574f28028e4705bcd10ecfdadeaa}} 
\index{varint.h@{varint.h}!qLpDec@{qLpDec}}
\index{qLpDec@{qLpDec}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{qLpDec}{qLpDec}}
{\footnotesize\ttfamily \#define q\+Lp\+Dec(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(x=x$>$0?x-\/1\+:y-\/1)}



带最低限制的自减 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00084}{84}} 行定义.

\mbox{\Hypertarget{varint_8h_a6c0c97a8768383af5f921a0496bb7e6c}\label{varint_8h_a6c0c97a8768383af5f921a0496bb7e6c}} 
\index{varint.h@{varint.h}!rBit@{rBit}}
\index{rBit@{rBit}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{rBit}{rBit}}
{\footnotesize\ttfamily \#define r\+Bit(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(x\&($\sim$(1$<$$<$y)))}



拉低某一位 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00077}{77}} 行定义.

\mbox{\Hypertarget{varint_8h_aa1b4c6a5140aae5adbc14792ed9cbaf5}\label{varint_8h_aa1b4c6a5140aae5adbc14792ed9cbaf5}} 
\index{varint.h@{varint.h}!sBit@{sBit}}
\index{sBit@{sBit}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{sBit}{sBit}}
{\footnotesize\ttfamily \#define s\+Bit(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(x$\vert$(1$<$$<$y))}



置高某一位 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00076}{76}} 行定义.

\mbox{\Hypertarget{varint_8h_ac123183daf1150b8b675c96cfeae4314}\label{varint_8h_ac123183daf1150b8b675c96cfeae4314}} 
\index{varint.h@{varint.h}!tBit@{tBit}}
\index{tBit@{tBit}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{tBit}{tBit}}
{\footnotesize\ttfamily \#define t\+Bit(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(\mbox{\hyperlink{varint_8h_a338f1c6d28b8ee314ea8b33df5c6052e}{to\+Bool}}(\mbox{\hyperlink{varint_8h_af88c9f4171df59e6e0aa2db71bf9f250}{u\+Bit}}(x,y)))}



挑选某一位并且布尔化 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00074}{74}} 行定义.

\mbox{\Hypertarget{varint_8h_a338f1c6d28b8ee314ea8b33df5c6052e}\label{varint_8h_a338f1c6d28b8ee314ea8b33df5c6052e}} 
\index{varint.h@{varint.h}!toBool@{toBool}}
\index{toBool@{toBool}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{toBool}{toBool}}
{\footnotesize\ttfamily \#define to\+Bool(\begin{DoxyParamCaption}\item[{}]{x }\end{DoxyParamCaption})~(x!=0)}



数布尔化 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00072}{72}} 行定义.

\mbox{\Hypertarget{varint_8h_af88c9f4171df59e6e0aa2db71bf9f250}\label{varint_8h_af88c9f4171df59e6e0aa2db71bf9f250}} 
\index{varint.h@{varint.h}!uBit@{uBit}}
\index{uBit@{uBit}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{uBit}{uBit}}
{\footnotesize\ttfamily \#define u\+Bit(\begin{DoxyParamCaption}\item[{}]{x,  }\item[{}]{y }\end{DoxyParamCaption})~(x\&(1$<$$<$y))}



挑选某一位 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00073}{73}} 行定义.



\doxysubsection{类型定义说明}
\mbox{\Hypertarget{varint_8h_ad309dbcaeea13aa602d686964156ea0b}\label{varint_8h_ad309dbcaeea13aa602d686964156ea0b}} 
\index{varint.h@{varint.h}!i16@{i16}}
\index{i16@{i16}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{i16}{i16}}
{\footnotesize\ttfamily typedef int16\+\_\+t \mbox{\hyperlink{varint_8h_ad309dbcaeea13aa602d686964156ea0b}{i16}}}



16位有符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00046}{46}} 行定义.

\mbox{\Hypertarget{varint_8h_a48d6cd8e4135fb2ff7e7f2dac84089ec}\label{varint_8h_a48d6cd8e4135fb2ff7e7f2dac84089ec}} 
\index{varint.h@{varint.h}!i32@{i32}}
\index{i32@{i32}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{i32}{i32}}
{\footnotesize\ttfamily typedef int32\+\_\+t \mbox{\hyperlink{varint_8h_a48d6cd8e4135fb2ff7e7f2dac84089ec}{i32}}}



32位有符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00047}{47}} 行定义.

\mbox{\Hypertarget{varint_8h_a85cb35fbe5bf2961d7ad5f26814a91a2}\label{varint_8h_a85cb35fbe5bf2961d7ad5f26814a91a2}} 
\index{varint.h@{varint.h}!i64@{i64}}
\index{i64@{i64}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{i64}{i64}}
{\footnotesize\ttfamily typedef int64\+\_\+t \mbox{\hyperlink{varint_8h_a85cb35fbe5bf2961d7ad5f26814a91a2}{i64}}}



64位有符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00048}{48}} 行定义.

\mbox{\Hypertarget{varint_8h_ae3702327b5f47e83b431e22b33da7b58}\label{varint_8h_ae3702327b5f47e83b431e22b33da7b58}} 
\index{varint.h@{varint.h}!i8@{i8}}
\index{i8@{i8}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{i8}{i8}}
{\footnotesize\ttfamily typedef int8\+\_\+t \mbox{\hyperlink{varint_8h_ae3702327b5f47e83b431e22b33da7b58}{i8}}}



8位有符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00045}{45}} 行定义.

\mbox{\Hypertarget{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}\label{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}} 
\index{varint.h@{varint.h}!u16@{u16}}
\index{u16@{u16}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{u16}{u16}}
{\footnotesize\ttfamily typedef uint16\+\_\+t \mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}}}



16位无符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00041}{41}} 行定义.

\mbox{\Hypertarget{varint_8h_afaa62991928fb9fb18ff0db62a040aba}\label{varint_8h_afaa62991928fb9fb18ff0db62a040aba}} 
\index{varint.h@{varint.h}!u32@{u32}}
\index{u32@{u32}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{u32}{u32}}
{\footnotesize\ttfamily typedef uint32\+\_\+t \mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}}}



32位无符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00042}{42}} 行定义.

\mbox{\Hypertarget{varint_8h_a3f7e2bcbb0b4c338f3c4f6c937cd4234}\label{varint_8h_a3f7e2bcbb0b4c338f3c4f6c937cd4234}} 
\index{varint.h@{varint.h}!u64@{u64}}
\index{u64@{u64}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{u64}{u64}}
{\footnotesize\ttfamily typedef uint64\+\_\+t \mbox{\hyperlink{varint_8h_a3f7e2bcbb0b4c338f3c4f6c937cd4234}{u64}}}



64位无符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00043}{43}} 行定义.

\mbox{\Hypertarget{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}\label{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}} 
\index{varint.h@{varint.h}!u8@{u8}}
\index{u8@{u8}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{u8}{u8}}
{\footnotesize\ttfamily typedef uint8\+\_\+t \mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}}}



8位无符号数类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00040}{40}} 行定义.

\mbox{\Hypertarget{varint_8h_ab1725f18a2ec2964f4bc0499527e4c5d}\label{varint_8h_ab1725f18a2ec2964f4bc0499527e4c5d}} 
\index{varint.h@{varint.h}!vi16@{vi16}}
\index{vi16@{vi16}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vi16}{vi16}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_ad309dbcaeea13aa602d686964156ea0b}{i16}} \mbox{\hyperlink{varint_8h_ab1725f18a2ec2964f4bc0499527e4c5d}{vi16}}}



16位有符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00056}{56}} 行定义.

\mbox{\Hypertarget{varint_8h_a8b81ac6660e74bec836c0a4e0a0b6450}\label{varint_8h_a8b81ac6660e74bec836c0a4e0a0b6450}} 
\index{varint.h@{varint.h}!vi32@{vi32}}
\index{vi32@{vi32}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vi32}{vi32}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_a48d6cd8e4135fb2ff7e7f2dac84089ec}{i32}} \mbox{\hyperlink{varint_8h_a8b81ac6660e74bec836c0a4e0a0b6450}{vi32}}}



32位有符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00057}{57}} 行定义.

\mbox{\Hypertarget{varint_8h_aeffd8dafd889cdd80398ffcbb37cd7ef}\label{varint_8h_aeffd8dafd889cdd80398ffcbb37cd7ef}} 
\index{varint.h@{varint.h}!vi64@{vi64}}
\index{vi64@{vi64}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vi64}{vi64}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_a85cb35fbe5bf2961d7ad5f26814a91a2}{i64}} \mbox{\hyperlink{varint_8h_aeffd8dafd889cdd80398ffcbb37cd7ef}{vi64}}}



64位有符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00058}{58}} 行定义.

\mbox{\Hypertarget{varint_8h_ad9f0c7145e15b7b470a138dae48c178d}\label{varint_8h_ad9f0c7145e15b7b470a138dae48c178d}} 
\index{varint.h@{varint.h}!vi8@{vi8}}
\index{vi8@{vi8}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vi8}{vi8}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_ae3702327b5f47e83b431e22b33da7b58}{i8}} \mbox{\hyperlink{varint_8h_ad9f0c7145e15b7b470a138dae48c178d}{vi8}}}



8位有符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00055}{55}} 行定义.

\mbox{\Hypertarget{varint_8h_a677aa1edce4bbb53741b1cc24eb4c035}\label{varint_8h_a677aa1edce4bbb53741b1cc24eb4c035}} 
\index{varint.h@{varint.h}!vu16@{vu16}}
\index{vu16@{vu16}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vu16}{vu16}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_ace9d960e74685e2cd84b36132dbbf8aa}{u16}} \mbox{\hyperlink{varint_8h_a677aa1edce4bbb53741b1cc24eb4c035}{vu16}}}



16位无符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00051}{51}} 行定义.

\mbox{\Hypertarget{varint_8h_abcdd5d61f51cb4c472ac6637916cf72a}\label{varint_8h_abcdd5d61f51cb4c472ac6637916cf72a}} 
\index{varint.h@{varint.h}!vu32@{vu32}}
\index{vu32@{vu32}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vu32}{vu32}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_afaa62991928fb9fb18ff0db62a040aba}{u32}} \mbox{\hyperlink{varint_8h_abcdd5d61f51cb4c472ac6637916cf72a}{vu32}}}



32位无符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00052}{52}} 行定义.

\mbox{\Hypertarget{varint_8h_ace392b4d1c3911331b2fe5ddc99fdcba}\label{varint_8h_ace392b4d1c3911331b2fe5ddc99fdcba}} 
\index{varint.h@{varint.h}!vu64@{vu64}}
\index{vu64@{vu64}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vu64}{vu64}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_a3f7e2bcbb0b4c338f3c4f6c937cd4234}{u64}} \mbox{\hyperlink{varint_8h_ace392b4d1c3911331b2fe5ddc99fdcba}{vu64}}}



64位无符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00053}{53}} 行定义.

\mbox{\Hypertarget{varint_8h_a1a2a3100a902c32a55d8b08915bce044}\label{varint_8h_a1a2a3100a902c32a55d8b08915bce044}} 
\index{varint.h@{varint.h}!vu8@{vu8}}
\index{vu8@{vu8}!varint.h@{varint.h}}
\doxysubsubsection{\texorpdfstring{vu8}{vu8}}
{\footnotesize\ttfamily typedef volatile \mbox{\hyperlink{varint_8h_a92c50087ca0e64fa93fc59402c55f8ca}{u8}} \mbox{\hyperlink{varint_8h_a1a2a3100a902c32a55d8b08915bce044}{vu8}}}



8位无符号易变类型 



在文件 \mbox{\hyperlink{varint_8h_source}{varint.\+h}} 第 \mbox{\hyperlink{varint_8h_source_l00050}{50}} 行定义.

