Math.Gmp.Native/docs/html/95c2ec1a-18ef-5081-f614-ccb...

128 lines
27 KiB
HTML
Raw Normal View History

<html><head><meta http-equiv="X-UA-Compatible" content="IE=edge" /><link rel="shortcut icon" href="../icons/favicon.ico" /><link rel="stylesheet" type="text/css" href="../styles/branding.css" /><link rel="stylesheet" type="text/css" href="../styles/branding-en-US.css" /><script type="text/javascript" src="../scripts/branding.js"> </script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>gmp_lib.mpz_export Method (void_ptr, ptr(size_t), Int32, size_t, Int32, size_t, mpz_t)</title><meta name="Language" content="en-us" /><meta name="Microsoft.Help.Id" content="M:Math.Gmp.Native.gmp_lib.mpz_export(Math.Gmp.Native.void_ptr,Math.Gmp.Native.ptr{Math.Gmp.Native.size_t},System.Int32,Math.Gmp.Native.size_t,System.Int32,Math.Gmp.Native.size_t,Math.Gmp.Native.mpz_t)" /><meta name="Description" content="Fill with word data from ." /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="true" /><meta name="container" content="Math.Gmp.Native" /><meta name="file" content="95c2ec1a-18ef-5081-f614-ccb6047a2b52" /><meta name="guid" content="95c2ec1a-18ef-5081-f614-ccb6047a2b52" /><link type="text/css" rel="stylesheet" href="../styles/highlight.css" /><script type="text/javascript" src="../scripts/highlight.js"> </script><link rel="stylesheet" type="text/css" href="../styles/branding-Website.css" /><script type="text/javascript" src="../scripts/jquery-1.11.0.min.js"></script><script type="text/javascript" src="../scripts/branding-Website.js"></script><script type="text/javascript" src="../scripts/clipboard.min.js"></script></head><body onload="OnLoad('cs')"><input type="hidden" id="userDataCache" class="userDataStyle" /><div class="pageHeader" id="PageHeader">GMP Native Interface for .NET<form id="SearchForm" method="get" action="#" onsubmit="javascript:TransferToSearchPage(); return false;"><input id="SearchTextBox" type="text" maxlength="200" /><button id="SearchButton" type="submit"></button></form></div><div class="pageBody"><div class="leftNav" id="leftNav"><div id="tocNav"><div class="toclevel0" data-toclevel="0"><a class="tocCollapsed" onclick="javascript: Toggle(this);" href="#!" /><a data-tochassubtree="true" href="846f5c8a-6cba-433e-9f18-cde2ff5695cd.htm" title="GMP Native Interface for .NET" tocid="roottoc">GMP Native Interface for .NET</a></div><div class="toclevel0" data-toclevel="0"><a class="tocCollapsed" onclick="javascript: Toggle(this);" href="#!" /><a data-tochassubtree="true" href="d9c51b9f-0c54-770b-28ea-6eebd8fef368.htm" title="Math.Gmp.Native" tocid="d9c51b9f-0c54-770b-28ea-6eebd8fef368">Math.Gmp.Native</a></div><div class="toclevel0" data-toclevel="0"><a class="tocCollapsed" onclick="javascript: Toggle(this);" href="#!" /><a data-tochassubtree="true" href="3af6b34c-3242-2b75-e7c7-ab79af8a4b0f.htm" title="gmp_lib Class" tocid="3af6b34c-3242-2b75-e7c7-ab79af8a4b0f">gmp_lib Class</a></div><div class="toclevel0" data-toclevel="0"><a class="tocCollapsed" onclick="javascript: Toggle(this);" href="#!" /><a data-tochassubtree="true" href="0fa7cbf3-e8f4-6b14-d829-8aa663e77c74.htm" title="gmp_lib Methods" tocid="0fa7cbf3-e8f4-6b14-d829-8aa663e77c74">gmp_lib Methods</a></div><div class="toclevel1" data-toclevel="1" data-childrenloaded="true"><a class="tocExpanded" onclick="javascript: Toggle(this);" href="#!" /><a data-tochassubtree="true" href="5fbffc1a-1ac4-6ca6-e528-abe7f8c96667.htm" title="mpz_export Method " tocid="5fbffc1a-1ac4-6ca6-e528-abe7f8c96667">mpz_export Method </a></div><div class="toclevel2 current" data-toclevel="2"><a data-tochassubtree="false" href="95c2ec1a-18ef-5081-f614-ccb6047a2b52.htm" title="mpz_export Method (void_ptr, ptr(size_t), Int32, size_t, Int32, size_t, mpz_t)" tocid="95c2ec1a-18ef-5081-f614-ccb6047a2b52">mpz_export Method (void_ptr, ptr(size_t), Int32, size_t, Int32, size_t, mpz_t)</a></div><div class="toclevel2" data-toclevel="2"><a data-tochassubtree="false" href="c9d371c8-8c16-77a3-2c47-8edae05276c5.htm" title="mpz_export Method (void_ptr, size_t, Int32, size_t, Int32, size_t, mpz_t)" tocid="c9d371c8-8c16-77a3-2c47-
Fill <span class="parameter">rop</span> with word data from <span class="parameter">op</span>.
</div><p> </p>
<strong>Namespace:</strong>
 <a href="d9c51b9f-0c54-770b-28ea-6eebd8fef368.htm">Math.Gmp.Native</a><br />
<strong>Assembly:</strong>
 Math.Gmp.Native (in Math.Gmp.Native.dll) Version: 1.0.0.0 (1.0.0.0)<div class="collapsibleAreaRegion"><span class="collapsibleRegionTitle" onclick="SectionExpandCollapse('ID1RB')" onkeypress="SectionExpandCollapse_CheckKey('ID1RB', event)" tabindex="0"><img id="ID1RBToggle" class="collapseToggle" src="../icons/SectionExpanded.png" />Syntax</span></div><div id="ID1RBSection" class="collapsibleSection"><div class="codeSnippetContainer"><div class="codeSnippetContainerTabs"><div id="ID0EDCA_tab1" class="codeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','cs','1','4');return false;">C#</a></div><div id="ID0EDCA_tab2" class="codeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','vb','2','4');return false;">VB</a></div><div id="ID0EDCA_tab3" class="codeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','cpp','3','4');return false;">C++</a></div><div id="ID0EDCA_tab4" class="codeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDCA','fs','4','4');return false;">F#</a></div></div><div class="codeSnippetContainerCodeContainer"><div class="codeSnippetToolBar"><div class="codeSnippetToolBarText"><a id="ID0EDCA_copyCode" href="#" class="copyCodeSnippet" onclick="javascript:CopyToClipboard('ID0EDCA');return false;" title="Copy">Copy</a></div></div><div id="ID0EDCA_code_Div1" class="codeSnippetContainerCode" style="display: block"><pre xml:space="preserve"><span class="keyword">public</span> <span class="keyword">static</span> <span class="identifier">void_ptr</span> <span class="identifier">mpz_export</span>(
<span class="identifier">void_ptr</span> <span class="parameter">rop</span>,
<span class="identifier">ptr</span>&lt;<span class="identifier">size_t</span>&gt; <span class="parameter">countp</span>,
<span class="identifier">int</span> <span class="parameter">order</span>,
<span class="identifier">size_t</span> <span class="parameter">size</span>,
<span class="identifier">int</span> <span class="parameter">endian</span>,
<span class="identifier">size_t</span> <span class="parameter">nails</span>,
<span class="identifier">mpz_t</span> <span class="parameter">op</span>
)</pre></div><div id="ID0EDCA_code_Div2" class="codeSnippetContainerCode" style="display: none"><pre xml:space="preserve"><span class="keyword">Public</span> <span class="keyword">Shared</span> <span class="keyword">Function</span> <span class="identifier">mpz_export</span> (
<span class="parameter">rop</span> <span class="keyword">As</span> <span class="identifier">void_ptr</span>,
<span class="parameter">countp</span> <span class="keyword">As</span> <span class="identifier">ptr</span>(<span class="keyword">Of</span> <span class="identifier">size_t</span>),
<span class="parameter">order</span> <span class="keyword">As</span> <span class="identifier">Integer</span>,
<span class="parameter">size</span> <span class="keyword">As</span> <span class="identifier">size_t</span>,
<span class="parameter">endian</span> <span class="keyword">As</span> <span class="identifier">Integer</span>,
<span class="parameter">nails</span> <span class="keyword">As</span> <span class="identifier">size_t</span>,
<span class="parameter">op</span> <span class="keyword">As</span> <span class="identifier">mpz_t</span>
) <span class="keyword">As</span> <span class="identifier">void_ptr</span></pre></div><div id="ID0EDCA_code_Div3" class="codeSnippetContainerCode" style="display: none"><pre xml:space="preserve"><span class="keyword">public</span>:
<span class="keyword">static</span> <span class="identifier">void_ptr</span> <span class="identifier">mpz_export</span>(
<span class="identifier">void_ptr</span> <span class="parameter">rop</span>,
<span class="identifier">ptr</span>&lt;<span class="identifier">size_t</span>&gt;^ <span class="parameter">countp</span>,
<span class="identifier">int</span> <span class="parameter">order</span>,
<span class="identifier">size_t</span> <span class="parameter">size</span>,
<span class="identifier">int</span> <span class="parameter">endian</span>,
<span class="identifier">size_t</span> <span class="parameter">nails</span>,
<span class="identifier">mpz_t</span>^ <span class="parameter">op</span>
)</pre></div><div id="ID0EDCA_code_Div4" class="codeSnippetContainerCode" style="display: none"><pre xml:space="preserve"><span class="keyword">static</span> <span class="keyword">member</span> <span class="identifier">mpz_export</span> :
<span class="parameter">rop</span> : <span class="identifier">void_ptr</span> *
<span class="parameter">countp</span> : <span class="identifier">ptr</span>&lt;<span class="identifier">size_t</span>&gt; *
<span class="parameter">order</span> : <span class="identifier">int</span> *
<span class="parameter">size</span> : <span class="identifier">size_t</span> *
<span class="parameter">endian</span> : <span class="identifier">int</span> *
<span class="parameter">nails</span> : <span class="identifier">size_t</span> *
<span class="parameter">op</span> : <span class="identifier">mpz_t</span> <span class="keyword">-&gt;</span> <span class="identifier">void_ptr</span>
</pre></div></div></div><script type="text/javascript">AddLanguageTabSet("ID0EDCA");</script><h4 class="subHeading">Parameters</h4><dl><dt><span class="parameter">rop</span></dt><dd>Type: <a href="e200d734-044d-4cc7-acc7-2333d7cf3c9a.htm">Math.Gmp.Native<span id="LSTCFF43A25_3"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_3?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>void_ptr</a><br />The result integer.</dd><dt><span class="parameter">countp</span></dt><dd>Type: <a href="542faa00-d28a-72a2-2dd8-6c6021e683ce.htm">Math.Gmp.Native<span id="LSTCFF43A25_4"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_4?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>ptr</a><span id="LSTCFF43A25_5"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_5?cs=&lt;|vb=(Of |cpp=&lt;|fs=&lt;'|nu=(");</script><a href="d9761bfb-1882-59d2-e89b-c6460141f9a6.htm">size_t</a><span id="LSTCFF43A25_6"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_6?cs=&gt;|vb=)|cpp=&gt;|fs=&gt;|nu=)");</script><br />The number of words produced.</dd><dt><span class="parameter">order</span></dt><dd>Type: <a href="http://msdn2.microsoft.com/en-us/library/td2s409d" target="_blank">System<span id="LSTCFF43A25_7"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_7?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Int32</a><br />1 for most significant word first or -1 for least significant first.</dd><dt><span class="parameter">size</span></dt><dd>Type: <a href="d9761bfb-1882-59d2-e89b-c6460141f9a6.htm">Math.Gmp.Native<span id="LSTCFF43A25_8"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_8?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>size_t</a><br />The number of bytes in each word.</dd><dt><span class="parameter">endian</span></dt><dd>Type: <a href="http://msdn2.microsoft.com/en-us/library/td2s409d" target="_blank">System<span id="LSTCFF43A25_9"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_9?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>Int32</a><br />1 for most significant byte first, -1 for least significant first, or 0 for the native endianness of the host CPU.</dd><dt><span class="parameter">nails</span></dt><dd>Type: <a href="d9761bfb-1882-59d2-e89b-c6460141f9a6.htm">Math.Gmp.Native<span id="LSTCFF43A25_10"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_10?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>size_t</a><br />The number of most significant bits to skip.</dd><dt><span class="parameter">op</span></dt><dd>Type: <a href="8beda7fb-bbc4-b56f-fd1f-1459377ecb3b.htm">Math.Gmp.Native<span id="LSTCFF43A25_11"></span><script type="text/javascript">AddLanguageSpecificTextSet("LSTCFF43A25_11?cs=.|vb=.|cpp=::|nu=.|fs=.");</script>mpz_t</a><br />The operand integer.</dd></dl><h4 class="subHeading">Return Value</h4>Type: <a href="e200d734-044d-4cc7-acc7-2333d7cf3c9a.htm">void_ptr</a><br />Either <span class="parameter">rop</span> or the allocated block.</div><div class="collapsibleAreaRegion"><span class="collapsibleRegionTitle" onclick="SectionExpandCollapse('ID2RB')" onkeypress="SectionExpandCollapse_CheckKey('ID2RB', event)" tabindex="0"><img id="ID2RBToggle" class="collapseToggle" src="../icons/SectionExpanded.png" />Remarks</span></div><div id="ID2RBSection" class="collapsibleSection"><p>
The parameters specify the format of the data produced.
Each word will be <span class="parameter">size</span> bytes and <span class="parameter">order</span> can be 1 for most significant word first
or -1 for least significant first.
Within each word <span class="parameter">endian</span> can be 1 for most significant byte first,
-1 for least significant first, or 0 for the native endianness of the host CPU.
The most significant <span class="parameter">nails</span> bits of each word are unused and set to zero,
this can be 0 to produce full words.
</p><p>
The number of words produced is written to <span class="parameter">countp</span>, or <span class="parameter">countp</span> can be NULL to discard the count.
<span class="parameter">rop</span> must have enough space for the data, or if <span class="parameter">rop</span> is NULL then a result array of the necessary
size is allocated using the current GMP allocation function
(see <a href="https://gmplib.org/manual/Custom-Allocation.html#Custom-Allocation">GNU MP - Custom Allocation</a>).
In either case the return value is the destination used, either <span class="parameter">rop</span> or the allocated block.
</p><p>
If <span class="parameter">op</span> is non-zero then the most significant word produced will be non-zero.
If <span class="parameter">op</span> is zero then the count returned will be zero and nothing written to <span class="parameter">rop</span>.
If <span class="parameter">rop</span> is NULL in this case, no block is allocated, just NULL is returned.
</p><p>
The sign of <span class="parameter">op</span> is ignored, just the absolute value is exported.
2017-12-15 02:18:55 +01:00
An application can use <a href="86b2033c-26c3-3889-9025-b2a638910a86.htm">mpz_sgn</a> to get the sign and handle it as desired.
(see <a href="https://gmplib.org/manual/Integer-Comparisons.html#Integer-Comparisons">GNU MP - Integer Comparisons</a>)
</p><p>
There are no data alignment restrictions on <span class="parameter">rop</span>, any address is allowed.
</p><p>
When an application is allocating space itself the required size can be determined with a calculation like the following.
2017-12-15 02:18:55 +01:00
Since <a href="7dfe367e-74d3-e782-860b-2314da9c44cf.htm">mpz_sizeinbase</a> always returns at least 1, count here will be at least one, which avoids any portability
problems with malloc(0), though if z is zero no space at all is actually needed (or written).
2017-12-15 02:18:55 +01:00
</p><div class="codeSnippetContainer"><div class="codeSnippetContainerTabs"><div id="ID0EAAEBA_tab1" class="codeSnippetContainerTabSingle">C++</div></div><div class="codeSnippetContainerCodeContainer"><div class="codeSnippetToolBar"><div class="codeSnippetToolBarText"><a id="ID0EAAEBA_copyCode" href="#" class="copyCodeSnippet" onclick="javascript:CopyToClipboard('ID0EAAEBA');return false;" title="Copy">Copy</a></div></div><div id="ID0EAAEBA_code_Div1" class="codeSnippetContainerCode" style="display: block"><pre xml:space="preserve">numb = <span class="highlight-number">8</span> * size - nail;
count = (mpz_sizeinbase(z, <span class="highlight-number">2</span>) + numb - <span class="highlight-number">1</span>) / numb;
2017-12-15 02:18:55 +01:00
p = malloc(count * size);</pre></div></div></div><script type="text/javascript">AddLanguageTabSet("ID0EAAEBA");</script></div><div class="collapsibleAreaRegion"><span class="collapsibleRegionTitle" onclick="SectionExpandCollapse('ID3RB')" onkeypress="SectionExpandCollapse_CheckKey('ID3RB', event)" tabindex="0"><img id="ID3RBToggle" class="collapseToggle" src="../icons/SectionExpanded.png" />Examples</span></div><div id="ID3RBSection" class="collapsibleSection"><div class="codeSnippetContainer"><div class="codeSnippetContainerTabs"><div id="ID0EDAABA_tab1" class="codeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDAABA','cs','1','4');return false;">C#</a></div><div id="ID0EDAABA_tab2" class="codeSnippetContainerTab"><a href="#" onclick="javascript:ChangeTab('ID0EDAABA','vb','2','4');return false;">VB</a></div><div id="ID0EDAABA_tab3" class="codeSnippetContainerTabPhantom"><a href="#" onclick="javascript:ChangeTab('ID0EDAABA','cpp','3','4');return false;">C++</a></div><div id="ID0EDAABA_tab4" class="codeSnippetContainerTabPhantom"><a href="#" onclick="javascript:ChangeTab('ID0EDAABA','fs','4','4');return false;">F#</a></div></div><div class="codeSnippetContainerCodeContainer"><div class="codeSnippetToolBar"><div class="codeSnippetToolBarText"><a id="ID0EDAABA_copyCode" href="#" class="copyCodeSnippet" onclick="javascript:CopyToClipboard('ID0EDAABA');return false;" title="Copy">Copy</a></div></div><div id="ID0EDAABA_code_Div1" class="codeSnippetContainerCode" style="display: block"><pre xml:space="preserve"><span class="highlight-comment">// Create, initialize, and set the value of op to 0x800000000000000000000001.</span>
mpz_t op = <span class="highlight-keyword">new</span> mpz_t();
char_ptr <span class="highlight-keyword">value</span> = <span class="highlight-keyword">new</span> char_ptr(<span class="highlight-literal">"800000000000000000000001"</span>);
gmp_lib.mpz_init_set_str(op, <span class="highlight-keyword">value</span>, <span class="highlight-number">16</span>);
<span class="highlight-comment">// Export op as 3 words of 4 bytes each, first word is lsb, and first byte in each word is msb.</span>
void_ptr data = gmp_lib.allocate(<span class="highlight-number">12</span>);
ptr&lt;size_t&gt; countp = <span class="highlight-keyword">new</span> ptr&lt;size_t&gt;(<span class="highlight-number">0</span>);
gmp_lib.mpz_export(data, countp, <span class="highlight-number">-1</span>, <span class="highlight-number">4</span>, <span class="highlight-number">1</span>, <span class="highlight-number">0</span>, op);
<span class="highlight-comment">// Assert the result.</span>
<span class="highlight-keyword">byte</span>[] result = <span class="highlight-keyword">new</span> <span class="highlight-keyword">byte</span>[<span class="highlight-number">12</span>];
Marshal.Copy(data.ToIntPtr(), result, <span class="highlight-number">0</span>, <span class="highlight-number">12</span>);
Assert.IsTrue(result[<span class="highlight-number">0</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">1</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">2</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">3</span>] == <span class="highlight-number">0x01</span>);
Assert.IsTrue(result[<span class="highlight-number">4</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">5</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">6</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">7</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">8</span>] == <span class="highlight-number">0x80</span>);
Assert.IsTrue(result[<span class="highlight-number">9</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">10</span>] == <span class="highlight-number">0x00</span>);
Assert.IsTrue(result[<span class="highlight-number">11</span>] == <span class="highlight-number">0x00</span>);
<span class="highlight-comment">// Release unmanaged memory allocated for rop, data, and value.</span>
gmp_lib.mpz_clear(op);
gmp_lib.free(data);
gmp_lib.free(<span class="highlight-keyword">value</span>);</pre></div><div id="ID0EDAABA_code_Div2" class="codeSnippetContainerCode" style="display: none"><pre xml:space="preserve"><span class="highlight-comment">' Create, initialize, and set the value of op to 0x800000000000000000000001.</span>
<span class="highlight-keyword">Dim</span> op <span class="highlight-keyword">As</span> <span class="highlight-keyword">New</span> mpz_t()
<span class="highlight-keyword">Dim</span> value <span class="highlight-keyword">As</span> <span class="highlight-keyword">New</span> char_ptr(<span class="highlight-literal">"800000000000000000000001"</span>)
gmp_lib.mpz_init_set_str(op, value, <span class="highlight-number">16</span>)
<span class="highlight-comment">' Export op as 3 words of 4 bytes each, first word is lsb, and first byte in each word is msb.</span>
<span class="highlight-keyword">Dim</span> data <span class="highlight-keyword">As</span> void_ptr = gmp_lib.allocate(<span class="highlight-number">12</span>)
<span class="highlight-keyword">Dim</span> countp <span class="highlight-keyword">As</span> <span class="highlight-keyword">New</span> ptr(<span class="highlight-keyword">Of</span> size_t)(<span class="highlight-number">0</span>)
gmp_lib.mpz_export(data, countp, <span class="highlight-number">-1</span>, <span class="highlight-number">4</span>, <span class="highlight-number">1</span>, <span class="highlight-number">0</span>, op)
<span class="highlight-comment">' Assert the result.</span>
<span class="highlight-keyword">Dim</span> result <span class="highlight-keyword">As</span> <span class="highlight-keyword">Byte</span>() = <span class="highlight-keyword">New</span> <span class="highlight-keyword">Byte</span>(<span class="highlight-number">11</span>) { }
Marshal.Copy(data.ToIntPtr(), result, <span class="highlight-number">0</span>, <span class="highlight-number">12</span>)
Assert.IsTrue(result(<span class="highlight-number">0</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">1</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">2</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">3</span>) = <span class="highlight-number">&amp;H1</span>)
Assert.IsTrue(result(<span class="highlight-number">4</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">5</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">6</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">7</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">8</span>) = <span class="highlight-number">&amp;H80</span>)
Assert.IsTrue(result(<span class="highlight-number">9</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">10</span>) = <span class="highlight-number">&amp;H0</span>)
Assert.IsTrue(result(<span class="highlight-number">11</span>) = <span class="highlight-number">&amp;H0</span>)
<span class="highlight-comment">' Release unmanaged memory allocated for rop, data, and value.</span>
gmp_lib.mpz_clear(op)
gmp_lib.free(data)
2018-01-06 17:23:30 +01:00
gmp_lib.free(value)</pre></div><div id="ID0EDAABA_code_Div3" class="codeSnippetContainerCode" style="display: none"><p>No code example is currently available or this language may not be supported.</p></div><div id="ID0EDAABA_code_Div4" class="codeSnippetContainerCode" style="display: none"><p>No code example is currently available or this language may not be supported.</p></div></div></div><script type="text/javascript">AddLanguageTabSet("ID0EDAABA");</script></div><div class="collapsibleAreaRegion" id="seeAlsoSection"><span class="collapsibleRegionTitle" onclick="SectionExpandCollapse('ID4RB')" onkeypress="SectionExpandCollapse_CheckKey('ID4RB', event)" tabindex="0"><img id="ID4RBToggle" class="collapseToggle" src="../icons/SectionExpanded.png" />See Also</span></div><div id="ID4RBSection" class="collapsibleSection"><h4 class="subHeading">Reference</h4><div class="seeAlsoStyle"><a href="3af6b34c-3242-2b75-e7c7-ab79af8a4b0f.htm">gmp_lib Class</a></div><div class="seeAlsoStyle"><a href="5fbffc1a-1ac4-6ca6-e528-abe7f8c96667.htm">mpz_export Overload</a></div><div class="seeAlsoStyle"><a href="d9c51b9f-0c54-770b-28ea-6eebd8fef368.htm">Math.Gmp.Native Namespace</a></div><div class="seeAlsoStyle"><a href="8c8c1e55-275f-cff8-2152-883a4eaa163c.htm">mpz_import</a></div><div class="seeAlsoStyle"><a href="3af6b34c-3242-2b75-e7c7-ab79af8a4b0f.htm"><a href="/Math.Gmp.Native/html/3af6b34c-3242-2b75-e7c7-ab79af8a4b0f.htm#Integer_Import_and_Export">Integer Import and Export</a></a></div><div class="seeAlsoStyle"><a href="3af6b34c-3242-2b75-e7c7-ab79af8a4b0f.htm"><a href="https://gmplib.org/manual/Integer-Import-and-Export.html#Integer-Import-and-Export">GNU MP - Integer Import and Export</a></a></div></div></div></div><div id="pageFooter" class="pageFooter"> </div></body></html>