Справочное описание GLib | ||||
---|---|---|---|---|
#include <glib.h>
#define G_OS_WIN32
#define G_OS_BEOS
#define G_OS_UNIX
#define G_DIR_SEPARATOR
#define G_DIR_SEPARATOR_S
#define G_IS_DIR_SEPARATOR (c)
#define G_SEARCHPATH_SEPARATOR
#define G_SEARCHPATH_SEPARATOR_S
#define TRUE
#define FALSE
#define NULL
#define MIN (a, b)
#define MAX (a, b)
#define ABS (a)
#define CLAMP (x, low, high)
#define G_STRUCT_MEMBER (member_type, struct_p, struct_offset)
#define G_STRUCT_MEMBER_P (struct_p, struct_offset)
#define G_STRUCT_OFFSET (struct_type, member)
#define G_MEM_ALIGN
#define G_CONST_RETURN
#define G_OS_WIN32
Этот макрос определяется только в Windows. Поэтому вы можете группировать Windows-специфичный код в "#ifdef G_OS_WIN32".
#define G_OS_BEOS
Этот макрос определяется только в BeOS. Поэтому вы можете группировать BeOS-специфичный код в "#ifdef G_OS_BEOS".
#define G_OS_UNIX
Этот макрос определяется только в UNIX. Поэтому вы можете группировать UNIX-специфичный код в #ifdef G_OS_UNIX".
#define G_DIR_SEPARATOR
Символ разделения каталогов. Это '/' в UNIX и '\' в Windows.
#define G_DIR_SEPARATOR_S
Разделитель каталогов как строка. Это "/" в UNIX и "\" в Windows.
#define G_IS_DIR_SEPARATOR(c)
Проверяет является ли символ разделителем каталогов.
Возвращает
TRUE
для '/' в UNIX
и для '\' или '/' в Windows.
c : |
символ |
Начиная с версии 2.6
#define G_SEARCHPATH_SEPARATOR
Символ разделитель пути поиска. Это ':' в UNIX и ';' в Windows.
#define G_SEARCHPATH_SEPARATOR_S
Строка разделитель в пути поиска. Это ":" в UNIX и ";" в Windows.
#define MIN(a, b) (((a) < (b)) ? (a) : (b))
Находит меньшее из a
и b
.
a : |
числовое значение. |
b : |
числовое значение. |
Возвращает : | наименьшее из a и b .
|
#define MAX(a, b) (((a) > (b)) ? (a) : (b))
Находит наибольшее из a
и b
.
a : |
числовое значение. |
b : |
числовое значение. |
Возвращает : | наибольшее из a и b .
|
#define ABS(a) (((a) < 0) ? -(a) : (a))
Расчитывает абсолютное значение a
.
Абсолютное значение это простое число без отрицательного знака.
Например,
ABS(-10) равно 10.
ABS(10) также равно 10.
a : |
числовое значение. |
Возвращает : | абсолютное значение a .
|
#define CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x)))
Находит x
между установленными лимитами low
и high
.
Например,
CLAMP(5, 10, 15) это 10.
CLAMP(15, 5, 10) это 10.
CLAMP(20, 15, 25) это 20.
x : |
промежуточное числовое значение. |
low : |
допустимое минимальное значение. |
high : |
допустимое максимальное значение. |
Возвращает : | значение x заключенное между диапазоном low и high .
|
#define G_STRUCT_MEMBER(member_type, struct_p, struct_offset)
Возвращает элемент структуры в полученном смещении, используя полученный тип.
member_type : |
типовое поле структуры. |
struct_p : |
указатель в структуре. |
struct_offset : |
смещение поля от начала структуры, в байтах. |
Возвращает : | элемент структуры. |
#define G_STRUCT_MEMBER_P(struct_p, struct_offset)
Возвращает указатель без типа для полученного смещения структуры.
struct_p : |
указатель в структуре. |
struct_offset : |
смещение от начала структуры, в байтах. |
Возвращает : | указатель без типа struct_p плюс struct_offset байт.
|
#define G_STRUCT_OFFSET(struct_type, member)
Возвращает смещение в байтах элемента структуры.
struct_type : |
тип структуры, например GtkWidget. |
member : |
поле структуры, например window .
|
Возвращает : | смещение элемента от начала struct_type .
|
#define G_MEM_ALIGN
Указывает количество байт по которым будет распределена память в текущей платформе.
#define G_CONST_RETURN
Если G_DISABLE_CONST_RETURNS
определён, этот макрос не выполняется.
По умолчанию, макрос расширяется до const
. Макрос
должен использоваться для помещения const
в функции
возвращающие значения которые не должны изменяться. В основном этот макрос
позволяет использовать включение const
для возвращаемых
константных строк по умолчанию, пока программист не отключит это.
Этот макрос должен использоваться только для возвращаемых значений и для
out параметров, он не действует для
in параметров.