| Server IP : 182.53.201.61 / Your IP : 216.73.217.175 Web Server : Apache/2.2.15 (Fedora) System : Linux km10.dyndns.org 2.6.31.5-127.fc12.i686.PAE #1 SMP Sat Nov 7 21:25:57 EST 2009 i686 User : apache ( 48) PHP Version : 5.3.3 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/gtk-doc/html/glib/ |
Upload File : |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Numerical Definitions</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="index.html" title="GLib Reference Manual">
<link rel="up" href="glib-fundamentals.html" title="GLib Fundamentals">
<link rel="prev" href="glib-Byte-Order-Macros.html" title="Byte Order Macros">
<link rel="next" href="glib-Miscellaneous-Macros.html" title="Miscellaneous Macros">
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="chapter" href="glib.html" title="GLib Overview">
<link rel="chapter" href="glib-fundamentals.html" title="GLib Fundamentals">
<link rel="chapter" href="glib-core.html" title="GLib Core Application Support">
<link rel="chapter" href="glib-utilities.html" title="GLib Utilities">
<link rel="chapter" href="glib-data-types.html" title="GLib Data Types">
<link rel="chapter" href="tools.html" title="GLib Tools">
<link rel="index" href="ix01.html" title="Index">
<link rel="index" href="ix02.html" title="Index of deprecated symbols">
<link rel="index" href="ix03.html" title="Index of new symbols in 2.2">
<link rel="index" href="ix04.html" title="Index of new symbols in 2.4">
<link rel="index" href="ix05.html" title="Index of new symbols in 2.6">
<link rel="index" href="ix06.html" title="Index of new symbols in 2.8">
<link rel="index" href="ix07.html" title="Index of new symbols in 2.10">
<link rel="index" href="ix08.html" title="Index of new symbols in 2.12">
<link rel="index" href="ix09.html" title="Index of new symbols in 2.14">
<link rel="index" href="ix10.html" title="Index of new symbols in 2.16">
<link rel="index" href="ix11.html" title="Index of new symbols in 2.18">
<link rel="index" href="ix12.html" title="Index of new symbols in 2.20">
<link rel="index" href="ix13.html" title="Index of new symbols in 2.22">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="glib-Byte-Order-Macros.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="glib-fundamentals.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GLib Reference Manual</th>
<td><a accesskey="n" href="glib-Miscellaneous-Macros.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#glib-Numerical-Definitions.synopsis" class="shortcut">Top</a>
|
<a href="#glib-Numerical-Definitions.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry" title="Numerical Definitions">
<a name="glib-Numerical-Definitions"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="glib-Numerical-Definitions.top_of_page"></a>Numerical Definitions</span></h2>
<p>Numerical Definitions — mathematical constants, and floating point decomposition</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv" title="Synopsis">
<a name="glib-Numerical-Definitions.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include <glib.h>
#define <a class="link" href="glib-Numerical-Definitions.html#G-IEEE754-FLOAT-BIAS--CAPS" title="G_IEEE754_FLOAT_BIAS">G_IEEE754_FLOAT_BIAS</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-IEEE754-DOUBLE-BIAS--CAPS" title="G_IEEE754_DOUBLE_BIAS">G_IEEE754_DOUBLE_BIAS</a>
union <a class="link" href="glib-Numerical-Definitions.html#GFloatIEEE754" title="union GFloatIEEE754">GFloatIEEE754</a>;
union <a class="link" href="glib-Numerical-Definitions.html#GDoubleIEEE754" title="union GDoubleIEEE754">GDoubleIEEE754</a>;
#define <a class="link" href="glib-Numerical-Definitions.html#G-E--CAPS" title="G_E">G_E</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-LN2--CAPS" title="G_LN2">G_LN2</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-LN10--CAPS" title="G_LN10">G_LN10</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-PI--CAPS" title="G_PI">G_PI</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-PI-2--CAPS" title="G_PI_2">G_PI_2</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-PI-4--CAPS" title="G_PI_4">G_PI_4</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-SQRT2--CAPS" title="G_SQRT2">G_SQRT2</a>
#define <a class="link" href="glib-Numerical-Definitions.html#G-LOG-2-BASE-10--CAPS" title="G_LOG_2_BASE_10">G_LOG_2_BASE_10</a>
</pre>
</div>
<div class="refsect1" title="Description">
<a name="glib-Numerical-Definitions.description"></a><h2>Description</h2>
<p>
GLib offers mathematical constants such as <a class="link" href="glib-Numerical-Definitions.html#G-PI--CAPS" title="G_PI"><span class="type">G_PI</span></a> for the value of pi;
many platforms have these in the C library, but some don't, the GLib
versions always exist.
</p>
<p>
The <a class="link" href="glib-Numerical-Definitions.html#GFloatIEEE754" title="union GFloatIEEE754"><span class="type">GFloatIEEE754</span></a> and <a class="link" href="glib-Numerical-Definitions.html#GDoubleIEEE754" title="union GDoubleIEEE754"><span class="type">GDoubleIEEE754</span></a> unions are used to access the
sign, mantissa and exponent of IEEE floats and doubles. These
unions are defined as appropriate for a given platform.
IEEE floats and doubles are supported (used for
storage) by at least Intel, PPC and Sparc, for reference: <a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
<div class="refsect1" title="Details">
<a name="glib-Numerical-Definitions.details"></a><h2>Details</h2>
<div class="refsect2" title="G_IEEE754_FLOAT_BIAS">
<a name="G-IEEE754-FLOAT-BIAS--CAPS"></a><h3>G_IEEE754_FLOAT_BIAS</h3>
<pre class="programlisting">#define G_IEEE754_FLOAT_BIAS</pre>
<p>
See <a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
<hr>
<div class="refsect2" title="G_IEEE754_DOUBLE_BIAS">
<a name="G-IEEE754-DOUBLE-BIAS--CAPS"></a><h3>G_IEEE754_DOUBLE_BIAS</h3>
<pre class="programlisting">#define G_IEEE754_DOUBLE_BIAS</pre>
<p>
See <a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
<hr>
<div class="refsect2" title="union GFloatIEEE754">
<a name="GFloatIEEE754"></a><h3>union GFloatIEEE754</h3>
<pre class="programlisting">union GFloatIEEE754
{
gfloat v_float;
struct {
guint mantissa : 23;
guint biased_exponent : 8;
guint sign : 1;
} mpn;
};
</pre>
<p>
The <a class="link" href="glib-Numerical-Definitions.html#GFloatIEEE754" title="union GFloatIEEE754"><span class="type">GFloatIEEE754</span></a> and <a class="link" href="glib-Numerical-Definitions.html#GDoubleIEEE754" title="union GDoubleIEEE754"><span class="type">GDoubleIEEE754</span></a> unions are used to access the
sign, mantissa and exponent of IEEE floats and doubles. These
unions are defined as appropriate for a given platform.
IEEE floats and doubles are supported (used for
storage) by at least Intel, PPC and Sparc, for reference:
<a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
<hr>
<div class="refsect2" title="union GDoubleIEEE754">
<a name="GDoubleIEEE754"></a><h3>union GDoubleIEEE754</h3>
<pre class="programlisting">union GDoubleIEEE754
{
gdouble v_double;
struct {
guint mantissa_low : 32;
guint mantissa_high : 20;
guint biased_exponent : 11;
guint sign : 1;
} mpn;
};
</pre>
<p>
The <a class="link" href="glib-Numerical-Definitions.html#GFloatIEEE754" title="union GFloatIEEE754"><span class="type">GFloatIEEE754</span></a> and <a class="link" href="glib-Numerical-Definitions.html#GDoubleIEEE754" title="union GDoubleIEEE754"><span class="type">GDoubleIEEE754</span></a> unions are used to access the
sign, mantissa and exponent of IEEE floats and doubles. These
unions are defined as appropriate for a given platform.
IEEE floats and doubles are supported (used for
storage) by at least Intel, PPC and Sparc, for reference:
<a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
<hr>
<div class="refsect2" title="G_E">
<a name="G-E--CAPS"></a><h3>G_E</h3>
<pre class="programlisting">#define G_E</pre>
<p>
The base of natural logarithms.
</p>
</div>
<hr>
<div class="refsect2" title="G_LN2">
<a name="G-LN2--CAPS"></a><h3>G_LN2</h3>
<pre class="programlisting">#define G_LN2</pre>
<p>
The natural logarithm of 2.
</p>
</div>
<hr>
<div class="refsect2" title="G_LN10">
<a name="G-LN10--CAPS"></a><h3>G_LN10</h3>
<pre class="programlisting">#define G_LN10</pre>
<p>
The natural logarithm of 10.
</p>
</div>
<hr>
<div class="refsect2" title="G_PI">
<a name="G-PI--CAPS"></a><h3>G_PI</h3>
<pre class="programlisting">#define G_PI</pre>
<p>
The value of pi (ratio of circle's circumference to its diameter).
</p>
</div>
<hr>
<div class="refsect2" title="G_PI_2">
<a name="G-PI-2--CAPS"></a><h3>G_PI_2</h3>
<pre class="programlisting">#define G_PI_2</pre>
<p>
Pi divided by 2.
</p>
</div>
<hr>
<div class="refsect2" title="G_PI_4">
<a name="G-PI-4--CAPS"></a><h3>G_PI_4</h3>
<pre class="programlisting">#define G_PI_4</pre>
<p>
Pi divided by 4.
</p>
</div>
<hr>
<div class="refsect2" title="G_SQRT2">
<a name="G-SQRT2--CAPS"></a><h3>G_SQRT2</h3>
<pre class="programlisting">#define G_SQRT2</pre>
<p>
The square root of two.
</p>
</div>
<hr>
<div class="refsect2" title="G_LOG_2_BASE_10">
<a name="G-LOG-2-BASE-10--CAPS"></a><h3>G_LOG_2_BASE_10</h3>
<pre class="programlisting">#define G_LOG_2_BASE_10</pre>
<p>
Used for fooling around with float formats, see
<a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
</div>
<div class="refsect1" title="See Also">
<a name="glib-Numerical-Definitions.see-also"></a><h2>See Also</h2>
<p>
<a class="ulink" href="http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html" target="_top">http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html</a>
</p>
</div>
</div>
<div class="footer">
<hr>
Generated by GTK-Doc V1.11</div>
</body>
</html>