📄 glib-random-numbers.html
字号:
<a class="indexterm" name="id3051259"></a><pre class="programlisting"><a class="link" href="glib-Random-Numbers.html#GRand">GRand</a>* g_rand_new (void);</pre><p>Creates a new random number generator initialized with a seed takeneither from <code class="filename">/dev/urandom</code> (if existing) or from the current time (as a fallback).</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td> the new <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3051312"></a><h3><a name="g-rand-copy"></a>g_rand_copy ()</h3><a class="indexterm" name="id3051327"></a><pre class="programlisting"><a class="link" href="glib-Random-Numbers.html#GRand">GRand</a>* g_rand_copy (<a class="link" href="glib-Random-Numbers.html#GRand">GRand</a> *rand_);</pre><p>Copies a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a> into a new one with the same exact state as before.This way you can take a snapshot of the random number generator forreplaying later.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td> a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td> the new <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr></tbody></table></div><p class="since">Since 2.4</p></div><hr><div class="refsect2" lang="en"><a name="id3051419"></a><h3><a name="g-rand-free"></a>g_rand_free ()</h3><a class="indexterm" name="id3051431"></a><pre class="programlisting">void g_rand_free (<a class="link" href="glib-Random-Numbers.html#GRand">GRand</a> *rand_);</pre><p>Frees the memory allocated for the <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td> a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3051494"></a><h3><a name="g-rand-set-seed"></a>g_rand_set_seed ()</h3><a class="indexterm" name="id3051507"></a><pre class="programlisting">void g_rand_set_seed (<a class="link" href="glib-Random-Numbers.html#GRand">GRand</a> *rand_, <a class="link" href="glib-Basic-Types.html#guint32">guint32</a> seed);</pre><p>Sets the seed for the random number generator <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a> to <em class="parameter"><code>seed</code></em>.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td> a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr><tr><td><p><span class="term"><em class="parameter"><code>seed</code></em> :</span></p></td><td> a value to reinitialize the random number generator.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3051599"></a><h3><a name="g-rand-set-seed-array"></a>g_rand_set_seed_array ()</h3><a class="indexterm" name="id3051614"></a><pre class="programlisting">void g_rand_set_seed_array (<a class="link" href="glib-Random-Numbers.html#GRand">GRand</a> *rand_, const <a class="link" href="glib-Basic-Types.html#guint32">guint32</a> *seed, <a class="link" href="glib-Basic-Types.html#guint">guint</a> seed_length);</pre><p>Initializes the random number generator by an array oflongs. Array can be of arbitrary size, though only thefirst 624 values are taken. This function is usefulif you have many low entropy seeds, or if you require more then32bits of actual entropy for your application.</p><p></p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td> a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr><tr><td><p><span class="term"><em class="parameter"><code>seed</code></em> :</span></p></td><td> array to initialize with</td></tr><tr><td><p><span class="term"><em class="parameter"><code>seed_length</code></em> :</span></p></td><td> length of array</td></tr></tbody></table></div><p class="since">Since 2.4</p></div><hr><div class="refsect2" lang="en"><a name="id3051727"></a><h3><a name="g-rand-boolean"></a>g_rand_boolean()</h3><a class="indexterm" name="id3051739"></a><pre class="programlisting">#define g_rand_boolean(rand_)</pre><p>Returns a random <a class="link" href="glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> from <em class="parameter"><code>rand_</code></em>. This corresponds to a unbiasedcoin toss.</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td>a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td>a random <a class="link" href="glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3051814"></a><h3><a name="g-rand-int"></a>g_rand_int ()</h3><a class="indexterm" name="id3051826"></a><pre class="programlisting"><a class="link" href="glib-Basic-Types.html#guint32">guint32</a> g_rand_int (<a class="link" href="glib-Random-Numbers.html#GRand">GRand</a> *rand_);</pre><p>Returns the next random <a class="link" href="glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> from <em class="parameter"><code>rand_</code></em> equally distributed overthe range [0..2^32-1].</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td> a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td><td> A random number.</td></tr></tbody></table></div></div><hr><div class="refsect2" lang="en"><a name="id3051907"></a><h3><a name="g-rand-int-range"></a>g_rand_int_range ()</h3><a class="indexterm" name="id3051919"></a><pre class="programlisting"><a class="link" href="glib-Basic-Types.html#gint32">gint32</a> g_rand_int_range (<a class="link" href="glib-Random-Numbers.html#GRand">GRand</a> *rand_, <a class="link" href="glib-Basic-Types.html#gint32">gint32</a> begin, <a class="link" href="glib-Basic-Types.html#gint32">gint32</a> end);</pre><p>Returns the next random <a class="link" href="glib-Basic-Types.html#gint32"><span class="type">gint32</span></a> from <em class="parameter"><code>rand_</code></em> equally distributed overthe range [<em class="parameter"><code>begin</code></em>..<em class="parameter"><code>end</code></em>-1].</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>rand_</code></em> :</span></p></td><td> a <a class="link" href="glib-Random-Numbers.html#GRand"><span class="type">GRand</span></a>.</td></tr><tr><td><p><span class="term"><em class="parameter"><code>begin</code></em> :</span></p></td><td> lower closed bound of the interval.</td></tr><tr><td><p><span class="term"><em class="parameter"><code>end</code></em> :</span></p></td><td> upper open bound of the interval.</td></tr><tr><td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -