glib简介及用法

glib是gtk的基本库,提供了许多实用函数,包括常用的数据结构处理、文件处理、字符串处理等。使用时只需要包括<glib.h>。

sudo apt-get install devhelp来安装devhelp,之后就可以通过devhelp来查看函数了。

glib有它自己的类型定义:


整数类型:

gint8、guint8、gint16、guint16、gint32、guint32、gint64、guint64。

不是所有的平台都提供64位整型,如果一个平台有这些, glib会定义G_HAVE_GINT64。
类型gshort、glong、gint和short、long、int完全等价。

布尔类型:

gboolean:它可使代码更易读,因为普通C没有布尔类型。
Gboolean可以取两个值:TRUE和FALSE。实际上FALSE定义为0,而TRUE定义为非零值。

字符型:

gchar和char完全一样,只是为了保持一致的命名。

浮点类型:

gfloat、gdouble和float、double完全等价。

指针类型:

gpointer对应于标准C的void *,但是比void *更方便。
指针gconstpointer对应于标准C的const void *(注意,将const void *定义为const gpointer是行不通的)


typedef char   gchar;

typedef short  gshort;

typedef long   glong;

typedef int    gint;

typedef gint   gboolean;

typedef unsigned char   guchar;

typedef unsigned short  gushort;

typedef unsigned long   gulong;

typedef unsigned int    guint;

typedef float   gfloat;

typedef double  gdouble;

typedef void* gpointer;

typedef gchar gint8;

typedef guchar guint8;

typedef gshort gint16;

typedef gushort guint16;

typedef gint gint32;

typedef guint guint32;


<glist.h>的GList为双向链表
typedef struct _GList             GList;
struct _GList
{
  gpointer data;
  GList *next;
  GList *prev;
};

<gslist.h>的GSList为单向链表
typedef struct _GSList           GSList;
struct _GSList
{
  gpointer data;
  GSList *next;
};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值