学习C语言要掌握的几个库

 更新时间:2015年07月24日 11:12:31   投稿:hebedich  
本文给大家分享的是网友提出的学习C语言要掌握的几个库,这里分享给大家,有需要的小伙伴可以参考下。

一、工具的使用

1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑器,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。

2、学会makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件。

3、掌握gcc和gdb的基本用法。掌握gcc的用法对于构建一个软件包很有益处,当软件包包含的文件比较多的时候,你还能用gcc把它手动编译出来,你就会对软件包中各个文件间的依赖关系有一个清晰的了解。

4、掌握svn/cvs的基本用法。这是linux,也是开源社区最常用的版本管理系统。可以去试着参加sourceforge上的一些开源项目。

二、linux/unix系统调用与标准C库

系统调用应用软件与操作系统的接口,其重要性自然不用说,一定要掌握。推荐学习资料为steven先生的UNIX环境高级编程(简称APUE)。

三、库的学习

无论是在哪个平台做软件开发,对于库的学习都很重要,linux下的开发库很多,我主要介绍一下我常常用到的一些库。

1、glib库

glib 库是gtk+和gnome的基础库,并具是跨平台的,在linux、unix和windows下都可以用。glib库对于linux平台开发的影响就像 MFC对windows平台开发的影响一样,很多开源项目都大量的使用了glib库,包括gimp、gnome、gaim、evolution和 linux下的集群软件heartbeat。因为glib库自带有基本的数据结构实现,所以在学习glib库的时候可以顺便学习一下基本的数据结构(包括 链表、树、队列和hash表)。

2、libxml库

libxml是linux平台下解析XML文件的一个基础库,现在很多实用软件都用XML格式的配置文件,所以也有必要学习一下。

3、readline库

readline 库是bash shell用的库,如果要开发命令行程序,那么使用readline库可以减少很多工作量,比如bash里的命令行自动补全,在readline里就已经 有实现,当然你也可以用自己的实现替代库的行为。readline库有很多网站介绍的,只要google一下readline就可以找到一堆了。

4、curses库

curses 库以前是vi程序的一部分,后来从vi里提取出来成为一个独立的库。curses库对于编写终端相关的程序特别有用,比如要在终端某一行某一列定位输出, 改变终端字体的颜色和终端模式。linux下的curses库用的是GNU实现的ncurses(new curses的意思)。

5、gtk+和KDE库

这两个库是开发GUI应用程序的基础库,现在linux下的大部份GUI程序都是基于这两个库开发的,对于它们 的学习也是很有必要的。

四、网络的学习

网络这个东西太宽了,推荐学习资料steven先生的UNIX网络编程(简称UNP)和TCP/IP协议详解,更进一步的话可以学习使用libnet编写网络程序。

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • C++中auto_ptr智能指针的用法详解

    C++中auto_ptr智能指针的用法详解

    这篇文章主要介绍了C++中auto_ptr智能指针的用法详解的相关资料,需要的朋友可以参考下
    2016-07-07
  • VC6.0如何创建以及调用动态链接库实例详解

    VC6.0如何创建以及调用动态链接库实例详解

    作为客户与后台的中介,为了更好的调节两方的关系,我明智滴选择了webservice以及动态链接库。在与客户c++使动态链接库方式,而与后台java,使用webservice来交流沟通
    2013-01-01
  • MySQL系列教程之使用C语言来连接数据库

    MySQL系列教程之使用C语言来连接数据库

    c语言操作Mysql数据库,主要就是为了实现对数据库的增、删、改、查等操作,下面这篇文章主要给大家介绍了关于MySQL系列教程之使用C语言来连接数据库的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • C++ pair方法与vector方法案例详解

    C++ pair方法与vector方法案例详解

    这篇文章主要介绍了C++ pair方法与vector方法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • 浅谈Qt QGraphics体系及刷新机制介绍

    浅谈Qt QGraphics体系及刷新机制介绍

    这篇文章主要介绍了浅谈Qt QGraphics体系及刷新机制介绍,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • C语言中的switch语句基本用法

    C语言中的switch语句基本用法

    这篇文章主要介绍了C语言中switch语句的基本用法,switch语句是一个多分支选择语句,并且可以支持嵌套,感兴趣的同学可以参考阅读
    2023-03-03
  • 谈谈C++学习之Pair的使用方法

    谈谈C++学习之Pair的使用方法

    pair是一种模板类型,其中包含两个数据值,两个数据的类型可以不同,本篇详细的介绍了Pair的使用方法和实例,有兴趣的同学可以了解一下。
    2016-12-12
  • c++中string和vector的详细介绍

    c++中string和vector的详细介绍

    这篇文章主要介绍了c++中string和vector的详细介绍,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-09-09
  • C++中求数组长度的方法详解

    C++中求数组长度的方法详解

    C++中没有直接提供求数组长度的方法,提供了sizeof(),begin(),end()等方法,可以供求数组长度使用,文中通过代码示例给大家讲解的非常详细,具有一定的参考价值,需要的朋友可以参考下
    2023-12-12
  • 利用Matlab复刻扫雷小游戏

    利用Matlab复刻扫雷小游戏

    windows自带的游戏《扫雷》是陪伴了无数人的经典游戏,本程序参考《扫雷》的规则进行了简化,用Matlab实现,感兴趣的小伙伴可以学习一下
    2022-03-03

最新评论