GLib: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
м Bot: добавление заголовков в сноски; исправление двойных сносок
По старому адресу ресурс не доступен.
Строка 91: Строка 91:
}}
}}
* {{cite web
* {{cite web
|url = http://linfoline.homedns.org/API/gobject/index.html
|url = http://docstore.mik.ua/manuals/ru/gobject_api/index.html
|title = Справочное описание GObject
|title = Справочное описание GObject
|lang = ru
|lang = ru

Версия от 07:17, 1 февраля 2011

Glib
Тип библиотека исполнения
Разработчики GNOME Foundation[2], Red Hat[2], Collabora[вд][2] и Canonical Ltd.[2]
Написана на С
Операционная система кроссплатформенная
Последняя версия 2.27.91 (13 января 2011[1])
Репозиторий gitlab.gnome.org/GNOME/g…
Лицензия GNU LGPL
Сайт www.gtk.org

GLib — низкоуровневая библиотека, расширяющая возможности, предоставляемые стандартной библиотекой libc языка C.

Разрабатываемая в рамках и лежащая в основах проектов GTK+ и GNOME, GLib широко используется в приложениях, в том числе и неграфических. Выпуск очередной версии библиотеки по времени обычно совпадает с выпуском новой версии GTK+.

Glib предоставляет основную объектную систему, используемую в GNOME, реализацию основного цикла, а также обширный набор вспомогательных функций для строк и типовых структур данных[3].

На данный момент GLib способна работать на многих UNIX-подобных операционных системах, а также MS Windows, OS/2 и BeOS.

Возможности

GLib предоставляет следующие возможности:

  • большой набор базовых и производных типов данных;
  • макросы и развитый механизм отладочных сообщений;
  • строковые функции;
  • функции для преобразования кодировок и поддержки юникода;
  • встроенные макросы gettext для интернационализации;
  • средства для работы с динамической памятью;
  • средства для динамической загрузки модулей;
  • атомарные операции;
  • программные потоки и средства их синхронизации;
  • порождение новых процессов;
  • таймеры, функции для работы с датой и временем;
  • генератор псевдо-случайных чисел;
  • универсальный лексический сканер;
  • синтаксический анализатор параметров командной строки;
  • синтаксический анализатор подмножества данных типа XML;
  • синтаксический анализатор .ini-подобных конфигурационных файлов;
  • средства ввода-вывода;
  • Hook Functions;
  • Shell-related Utilities;
  • синтаксический анализатор файлов, содержащих закладки;
  • средства работы с регулярными выражениями типа Glob.

Типы данных

Базовые типы данных GLib предназначены для удобства программиста и переносимости приложения. Они делятся на следующие группы:

  1. Целые типы с фиксированным размером — gint8, guint8, gint16, guint16, gint32, guint32, gint64, guint64. Размер переменной любого из этих типов одинаков для каждой используемой аппаратной платформы. Для gint8, например, он всегда равен 8 бит.
  2. Тёзки стандартных типов языка C — gpointer (аналог void *), gconstpointer, guchar (аналог unsigned char), guint, gushort, gulong, gchar (аналог char), gint, gshort, glong, gfloat и gdouble.
  3. Тип gboolean со значениями TRUE и FALSE, типы gsize и gssize для представления размеров структур данных.
  4. Тип GString, который похож на стандартные С строки, за исключением того, что они автоматически расширяются, когда текст добавляется или вставляется. Также, он хранит длину строки, так что может быть использован для двоичных данных с нулевыми байтами.

Примечания

Ссылки