Tipos de datos de GLib

Dentro de la biblioteca GLib está implementada una serie de tipos de datos que facilita, si cabe, el tratamiento de los datos y además tiene la propiedad de mejorar la portabilidad de los programas. Los tipos que se usan en GLib no son muy diferentes de los utilizados en el estándar de C, por lo cual no resultará complicado familiarizarse con ellos. A continuación se podrá observar una tabla de correspondencia entre los tipos de GLib contra los de estándar de C.

Tabla 6-1.1. Tipos de GLib que corresponden con los del estándar C.

Tipos GLib.

Tipos estándar C.

gchar

char

gint

int

gshort

short

glong

long

gfloat

float

gdouble

double

Como se ha demostrado en la tabla, los tipos de GLib no difieren en gran medida de los utilizados al programar con los tipos estándar de C, aunque es altamente recomendable la familiarización con estos tipos si se desea trabajar con la plataforma GNOME. GLib también posee una serie de tipos que hacen más sencillo el tratamiento de datos. Algunos tienen su correspondencia en C, pero facilitan su utilización; otros sirven para mantener el mismo tamaño de datos de una plataforma a otra y, finalmente, hay otros que no tienen correspondencia con el estándar de C, pero que resultarán bastante útiles.

Tabla 6-1.2. Tipos de GLib que facilitan el uso de tipos del estándar C.

Tipos de GLib

Tipos del C estándar.

Definición

gpointer

void *

gpointer es un puntero sin tipo, que luce mejor que escribir void *.

gconstpointer

gconstpointer es un puntero a una constante. Los datos a los que apuntan no deberían ser cambiados. Este tipo suele usarse en los prototipos de funciones para indicar que el valor al que apunta la función no debería ser cambiado en el interior de la función.

guchar

unsigned char

Como se puede observar, estos tipos son idénticos a los tipos de C que carecen de signo, pero con la ventaja de que son más visuales y fáciles de usar.

guint

unsigned int

gushort

unsigned short

gulong

unsigned long

Tabla 6-1.3. Tipos de GLib que aseguran el tamaño del dato entre plataformas.

Tipo

Rango de tamaño del dato.

gint8

-128 a 127

guint8

0 a 255

gint16

-32.768 a 32.767

guint16

0 a 65535

gint32

-2.147.483.648 a 2.147.483.647

guint32

0 a 4.294.967.295

gint64

-9.223.372.036.854.775.808 a 9.223.372.036.854.775.807

guint64

0 a 18.446.744.073.709.551.615

Tabla 6-1.4. Tipos de GLib nuevos que no están en el estándar de C.

Tipos de GLib

Definición

gboolean

Este tipo es booleano y sólo contendrá los valores TRUE o FALSE.

gsize

Es un entero de treinta y dos bits sin signo que sirve para representar tamaños de estructuras de datos.

gssize

Es un entero de 32 bits con signo, que sirve para representar tamaños de estructuras de datos.

Quizás, la existencia de tipos tales como gint8, gint16, gsize, etcétera, pudiese sugerir mayor complejidad a la hora de aprender a utilizar la biblioteca GLib. Sin embargo es importante denotar que cuando se programa mediante esta biblioteca, los tipos más utilizados son char, int, double, etc., aunque ahora se antepondrá una letra "g" a cada tipo.


Volver a: GLib

Documentacion/Desarrollo/Glib/TiposDeDatosDeGlib (última edición 2008-12-04 08:48:55 efectuada por localhost)