出于编码风格一致性或可移植性考虑,一般的库,都会重新定义自己的基本数据类型。
GLib库定义的基本数据类型
GLib也定义了许多常用类型,可分为以下几组:
- 不属于标准C的新类型(但在各种C标准库头文件中定义)-gboolean、gssize。
- 保证在所有平台上大小相同的整数类型-gint8、gint8、gint16、gint16、gint32、gint32、gint64、gint64。
- 比标准C语言更容易使用的类型-gpointer、gconstpointer、guchar、guint、gushort、gulong。
- 与标准C类型完全对应的类型,但更完善-gchar、gint、gshort、glong、gfloat、gdouble。
- 与标准C99类型完全对应的类型,但即使您的编译器不支持C99仍可以使用的类型-gsize、goffset、gintptr、guintpttr。
在编码过程中,如果引用了GLib库的函数,尽量使用GLib库自己定义的基本数据类型。