glib和glibc区别

    技术2022-07-02  144

    发现很多人没有搞清楚这两个东西.有个错误的观点:认为Glib是GNU的东东.(因为前面那个"g"),而Glibc是Glib的一个子集. 其实,Glib和Glibc基本上没有太大的联系,可能唯一的共同点就是他们都是UNIX下C编程调用的库而已. Glib是GTK+调用的底层核心库.(GTK+由开发GIMP的一些工具包集合发展而来).GIMP和Gnome这样的图形界面程序都是基于GTK+的. 大家都知道C本身缺少数据结构,和一些重要的处理函数,C本身最复杂的数据结构也就是数组了.那么当你需要一个数据结构的话就自己得定义.幸好前人已经帮我们完成这个工作.他们把这写常用的数据结构和处理方法包装成一个库.其中之一就是Glib了.Glib中 定义了很多有用的数据结构.如数组(长度可变),单(双)向链表,hash表,队列,还有关系(学过关系型数据库的都应该知道这个概念).一些常用的处理 方法如:字符串的处理,标准输出(g_print等),错误输出,日志记录,为了portable而定义的一些基本数据类型(gint,gchar, guint等)极其他们的限制,还有事件循环,线程,IO操作等. GTK+和如今的多数GUI编程语言一样,基于消息传递与事件处理(GTK+里用信号,和消息的本质是一样的,只不过是前人帮我们定义好了而已).象 JAVA一样,GTK+中为我们定义好了容器,面板,组件等器件,调用就行了.而他本身又调用了Glib的好多东西. Glibc是GNU开发的C库,和libc中好多东西重复.


    最新回复(0)