linux c 之 glib 库学习
文章平均质量分 80
洋葱炖鱼
这个作者很懒,什么都没留下…
展开
-
GLib基础——大小端处理
Big Endian,简称BE),是指数据的低位(就是权值较小的后面那几位)保存在内存的高地址中,而数据的高位,保存在内存的低地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放。(Little Endian,简称LE),是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低,和我们的逻辑方法一致。上述中,swap表示交换的意思。巧用联合体对大小端判断。...原创 2022-08-06 20:44:00 · 482 阅读 · 0 评论 -
GLib基础——标准宏
此外,还有相应返回字符串的版本G_**_SEPARATOR_S。比如,在LINUX下,G_DIR_SEPARATOR是’/‘,G_SEARCHPATH_SEPARATOR是’'。G_NORETURN用来指明函数为无返回值,G_NORETURN_FUNCPTR用于指向无返回值的函数的指针。defineG_N_ELEMENTS(arr)用于返回数组中元素的个数,数组的大小必须要在编译时是确定的。G_OS_WIN32、G_OS_UNIX只会在WINDOW或LINUX有定义,可以用来区分当前操作系统。.......原创 2022-07-27 21:49:52 · 520 阅读 · 0 评论 -
GLib基础——基础数据类型
为了区别标准C,同时为了编程方便、自成体系,GLib定义一些基础的数据类型。大致可以分为如下几类: - 不属于标准C的全新类型,但通常会在各种库头文件中定义,比如gboolean, gssize; - 大小固定的整数类型,保证了跨平台一致性,比如gint8, guint8, gint16, guint16, gint32, guint32, gint64, guint64; - 对接标准C重新定义类型,相对而言更易用,比如gpointer, gconstpointer, guchar, guint,原创 2022-07-27 19:49:22 · 693 阅读 · 0 评论 -
Glib基础——版本信息
GLib提供了版本信息,主要用在配置文件中对版本信息的检查,一般不使用在具体应用中。GLib的版本号格式为major.minor.micro,分别表示主版本号、副版本号、微版本号,越靠后更新频率越快,比如2.72.1。版本检查主要分为编译时compile time、运行时run time检查。如果程序中使用了已经被弃用的 API,将引发警告。GLIB_CHECK_VERSION()只对版本号进行检查,检查指定版本号是否比编译的版本号新。兼容时返回TRUE,否则为FALSE。glib_check_versi原创 2022-07-26 15:55:14 · 783 阅读 · 0 评论