Справочное описание GLib | ||||
---|---|---|---|---|
#include <glib.h>
#define G_IEEE754_FLOAT_BIAS
#define G_IEEE754_DOUBLE_BIAS
union GFloatIEEE754;
union GDoubleIEEE754;
#define G_E
#define G_LN2
#define G_LN10
#define G_PI
#define G_PI_2
#define G_PI_4
#define G_SQRT2
#define G_LOG_2_BASE_10
GLib предлагает математические константы такие как G_PI для значения pi; большинство платформ имеют их в C библиотеке, но некоторые нет, GLib версии всегда включают их.
Множества GFloatIEEE754 и GDoubleIEEE754 используются для доступности знаков, десятичных точек (mantissa) и степеней IEEE floats и doubles. Эти множества определяются как соответствующие для данной платформы. IEEE floats и doubles поддерживаются (используются для хранения) по крайней мере Intel, PPC и Sparc.
Для справки: http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html
#define G_IEEE754_FLOAT_BIAS (127)
Смотрите http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html
#define G_IEEE754_DOUBLE_BIAS (1023)
Смотрите http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html
union GFloatIEEE754
{
gfloat v_float;
struct {
guint mantissa : 23;
guint biased_exponent : 8;
guint sign : 1;
} mpn;
};
Множества GFloatIEEE754 и GDoubleIEEE754 используются для доступности знаков, десятичных точек (mantissa) и степеней IEEE floats и doubles. Эти множества определяются как соответствующие для данной платформы. IEEE floats и doubles поддерживаются (используются для хранения) по крайней мере Intel, PPC и Sparc.
Для справки:http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html
union GDoubleIEEE754
{
gdouble v_double;
struct {
guint mantissa_low : 32;
guint mantissa_high : 20;
guint biased_exponent : 11;
guint sign : 1;
} mpn;
};
The GFloatIEEE754 and GDoubleIEEE754 используются для доступности знаков, десятичных точек (mantissa) и степеней IEEE floats и doubles. Эти множества определяются как соответствующие для данной платформы. IEEE floats и doubles поддерживаются (используются для хранения) по крайней мере Intel, PPC и Sparc.
Для справки:http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html
#define G_LN10 2.3025850929940456840179914546843642076011014886288
Естевственный логарифм 10.
#define G_PI 3.1415926535897932384626433832795028841971693993751
Значение pi (соотношение окружности круга к диаметру).
#define G_LOG_2_BASE_10 (0.30102999566398119521)
Используется для дурачеств с форматом float, смотрите http://cch.loria.fr/documentation/IEEE754/numerical_comp_guide/ncg_math.doc.html