zoukankan      html  css  js  c++  java
  • Linux系统编程12_标准库和POSIX标准头文件

    C标准库

    C运行时库(包含C标准库的实现),但还包含了平台自身开发的库;是C标准库的超集;

    ====================================================

    C标准库头文件
    stdio.h //输入/输出
    stdlib.h //基础工具:内存管理、程序工具、字符串转换、随机数
    string.h //字符串处理
    ctype.h //用来确定包含于字符数据中的类型的函数
    stddef.h //常用宏定义
    stdarg.h //可变参数
    signal.h //信号处理


    POSIX标准定义的头文件 //优先考虑
    pthread.h           //标准库没有添加多线程之前的在Linux上用的多线程库
    unistd.h            //unistd.h为Linux/Unix系统中内置头文件,包含了许多系统服务的函数原型,例如read函数、write函数和getpid函数等。
                            //提供对 POSIX 操作系统 API 的访问功能,其中调用的接口大量都是对系统调用的封装
    <fcntl.h>          //文件控制
    <mqueue.h>   //消息队列
    <regex.h>       //正则表达式
    <semaphore.h>   //信号量

    sys库:
    <sys/stat.h>         //是unix/linux系统定义文件状态所在的伪标准头文件
    <sys/shm.h>   //共享存储
    sys/socket.h   //套接字编程
    <sys/types.h>      //很多类型其实都是用typedef重定义的,和基本类型没什么区别,比如那个pid_t好像就是int 型的
    <sys/types.h>     //只是为了定义系统类型(pid_t,size_t等),没别的意思。

    <sys/mman.h>    //内存管理声明
    <sys/msg.h>       //消息队列  不推荐使用
    <sys/sem.h>       //信号量  不推荐使用


    <arpa/inet.h> Internet定义

    ====================================================

    系统调用和库函数的区别:https://www.cnblogs.com/yanlingyin/archive/2012/04/23/2466141.html

    系统调用与库函数:https://www.cnblogs.com/liwei0526vip/p/8998751.html

    man1 man2 ... 等区别:https://blog.csdn.net/u013528298/article/details/100109585

    ====================================================

    POSIX标准定义的头文件
    <dirent.h> 目录项
    <fcntl.h> 文件控制
    <fnmatch.h> 文件名匹配类型
    <glob.h> 路径名模式匹配类型
    <grp.h> 组文件
    <netdb.h> 网络数据库操作
    <pwd.h> 口令文件
    <regex.h> 正则表达式
    <tar.h> TAR归档值
    <termios.h> 终端I/O
    <unistd.h> 符号常量
    <utime.h> 文件时间
    <wordexp.h> 字符扩展类型
    -------------------------
    <arpa/inet.h> INTERNET定义
    <net/if.h> 套接字本地接口
    <netinet/in.h> INTERNET地址族
    <netinet/tcp.h> 传输控制协议定义
    -------------------------
    <sys/mman.h> 内存管理声明
    <sys/select.h> Select函数
    <sys/socket.h> 套接字接口
    <sys/stat.h> 文件状态
    <sys/times.h> 进程时间
    <sys/types.h> 基本系统数据类型
    <sys/un.h> UNIX域套接字定义
    <sys/utsname.h> 系统名
    <sys/wait.h> 进程控制
    ------------------------------
    POSIX定义的XSI扩展头文件
    <cpio.h> cpio归档值
    <dlfcn.h> 动态链接
    <fmtmsg.h> 消息显示结构
    ftw.h> 文件树漫游
    <iconv.h> 代码集转换使用程序
    <langinfo.h> 语言信息常量
    <libgen.h> 模式匹配函数定义
    <monetary.h> 货币类型
    <ndbm.h> 数据库操作
    <nl_types.h> 消息类别
    <poll.h> 轮询函数
    <search.h> 搜索表
    <strings.h> 字符串操作
    <syslog.h> 系统出错日志记录
    <ucontext.h> 用户上下文
    <ulimit.h> 用户限制
    <utmpx.h> 用户帐户数据库
    -----------------------------
    <sys/ipc.h> IPC(命名管道)
    <sys/msg.h> 消息队列
    <sys/resource.h>资源操作
    <sys/sem.h> 信号量
    <sys/shm.h> 共享存储
    <sys/statvfs.h> 文件系统信息
    <sys/time.h> 时间类型
    <sys/timeb.h> 附加的日期和时间定义
    <sys/uio.h> 矢量I/O操作
    ------------------------------
    POSIX定义的可选头文件
    <aio.h> 异步I/O
    <mqueue.h> 消息队列
    <pthread.h> 线程
    <sched.h> 执行调度
    <semaphore.h> 信号量
    <spawn.h> 实时spawn接口
    <stropts.h> XSI STREAMS接口
    <trace.h> 事件跟踪

    知行合一
  • 相关阅读:
    document.ready和window.onload的区别
    那些年,我们坚持着。
    JavaScript去除前后空格
    男孩的梦
    shapefile格式说明及读写代码示例 http://www.gispower.org/article/arcgis/arcother/2008/48/0848115049GB922C13K2I22H7G06A4.html
    如何在C#中加载自己编写的动态链接库(DLL)http://www.kehui.net/index.php/article/read/30/26323
    对象复制
    影像复制程序集在不关闭应用程序的前提下更新程序集
    ibatisnet系列(一) 总览 http://hjf1223.cnblogs.com/archive/2006/04/24/383118.html
    创建项模板模板参数
  • 原文地址:https://www.cnblogs.com/grooovvve/p/14646315.html
Copyright © 2011-2022 走看看