注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

创思通信官网:www.csgsm.com

创思通信-引领物联网新时代 520ic.taobao.com

 
 
 

日志

 
 
 
 

GLib中文文档 — GLib基本类型(Basic Types ) zz   

2010-04-14 15:22:14|  分类: c&c++ |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
前段时间用linux C写联机服务器,用到GLib库。
在网上找了很久,发现这么经典的库,居然没有中文文档。
于是花了几天的时间,翻译了常用的GLib库文档。
水平有限,很多地方都是直译,至少比看英文文档要方便些,有错误的地方欢迎指正。
也希望能给需要用GLib的朋友一些帮助。

如果本文有更新,请访问下面的地址:http://www.flashcat.com.cn/blog/read.php?32

Basic Types 基本类型
基本类型 — 标准的Glib类型,定义的非常易用和简便。

Synopsis 大纲

#include <glib.h>

typedef             gboolean;
typedef             gpointer;
typedef             gconstpointer;
typedef             gchar;
typedef             guchar;

typedef             gint;
typedef             guint;
typedef             gshort;
typedef             gushort;
typedef             glong;
typedef             gulong;

typedef             gint8;
typedef             guint8;
typedef             gint16;
typedef             guint16;
typedef             gint32;
typedef             guint32;

#define             G_HAVE_GINT64
typedef             gint64;
GLIB_VAR            guint64                             ();
#define             G_GINT64_CONSTANT                   (val)
#define             G_GUINT64_CONSTANT                  (val)

typedef             gfloat;
typedef             gdouble;

typedef             gsize;
typedef             gssize;
typedef             goffset;


Description 描述
定义一些普通使用类型,可分为4组:
1.不属于标准C的新类型:gboolean, gsize, gssize.
2.可以在任何平台使用的整数:gint8, guint8, gint16, guint16, gint32, guint32, gint64, guint64.
3.与标准C相似但更好用的类型:gpointer, gconstpointer, guchar, guint, gushort, gulong.
4.与标准C基本一致的类型:gchar, gint, gshort, glong, gfloat, gdouble.

Details 详细说明
gboolean
typedef gint   gboolean;
标准的boolean类型。它只储存两个值:TRUE和FALSE

gpointer
typedef void* gpointer;
无类型的指针。Gpointer比 void*更好看和更好用。

gconstpointer
typedef const void *gconstpointer;
一个常数的无类型指针。指针的值不能被更改。
典型的使用子函数原型上,指出指针所指向的数据是不能被函数更改的。

gchar
typedef char   gchar;
和标准C的char类型一致。

guchar
typedef unsigned char   guchar;
和标准C的 unsigned char一致。

gint
typedef int    gint;
类似标准C的int类型。其值能被设置G_MININT 到 G_MAXINT范围。

guint
typedef unsigned int    guint;
类似标准C的unsigned int类型。其值能被设置0到 G_MAXUINT的范围。

gshort
typedef short  gshort;
类似标准C的short类型。其值能被设置G_MINSHORT 到 G_MAXSHORT范围。

gushort
typedef unsigned short  gushort;
类似标准C的unsigned short类型。其值能被设置0到 G_MAXUSHORT的范围。

glong
typedef long   glong;
类似标准C的long类型。其值能被设置G_MINLONG 到 G_MAXLONG范围。

gulong
typedef unsigned long   gulong;
类似标准C的unsigned long类型。其值能被设置0到 G_MAXULONG的范围。

gint8
typedef signed char gint8;
在任何平台上都保证是一个有符号8位整数。
其取值返回为 -128 到 127

guint8
typedef unsigned char guint8;
在任何平台上都保证是一个无符号8位整数。
其取值返回为 0 到 255

gint16
typedef signed short gint16;
在任何平台上都保证是一个有符号16位整数。
其取值返回为 -32,768 到 32,767

guint16
typedef unsigned short guint16;
在任何平台上都保证是一个无符号16位整数。
其取值返回为 0 到 65,535

gint32
typedef signed int gint32;
在任何平台上都保证是一个有符号32位整数。
其取值返回为 -2,147,483,648 到 2,147,483,647

guint32
typedef unsigned int guint32;
在任何平台上都保证是一个无符号32位整数。
其取值返回为 0 到 4,294,967,295

gint64
G_GNUC_EXTENSION typedef signed long long gint64;
在任何平台上都保证是一个有符号64位整数。
其取值返回为 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807

guint64 ()
GLIB_VAR            guint64                             ();
在任何平台上都保证是一个无符号32位整数。
其取值返回为 0 到 18,446,744,073,709,551,615

G_GINT64_CONSTANT()
#define G_GINT64_CONSTANT(val)  (G_GNUC_EXTENSION (val##LL))
This macro is used to insert 64-bit integer literals into the source code.
(不太懂)
val :  a literal integer value, e.g. 0x1d636b02300a7aa7U.

G_GUINT64_CONSTANT()
#define G_GUINT64_CONSTANT(val)  (G_GNUC_EXTENSION (val##ULL))
This macro is used to insert 64-bit unsigned integer literals into the source code.
(不太懂)
val :  a literal integer value, e.g. 0x1d636b02300a7aa7U.
Since 2.10

gfloat
typedef float   gfloat;
类似标准C的float类型。其值可以设置-G_MAXFLOAT 到 G_MAXFLOAT范围

gdouble
typedef double  gdouble;
类似标准C的double类型。其值可以设置-G_MAXDOUBLE 到G_MAXDOUBLE范围

gsize
typedef unsigned int gsize;
一个无符号整形,用来储存sizeof的结果,与C99的size_t类型类似。
这个类型能足够存储下一个指针的数据。它常常在32为平台上是32位的,在64位平台上是64位的。

gssize
typedef signed int gssize;
一个有符号gsize,与大多数平台的ssize_t类型类似。

goffset
typedef gint64 goffset;
一个有符号的整形,用来作为文件偏移。类似于C99的off64_t
Since: 2.14
  评论这张
 
阅读(2391)| 评论(1)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018