zoukankan      html  css  js  c++  java
  • UNIX标准化及实现之基本系统数据类型

    历史上,某些UNIX系统变量已与某些C数据类型联系在一起。例如,历史上主、次设备号一直存放在一个16位的短整型中,8位表示主设备号,另外8位表示次设备号。但是,很多较大的系统需要用多于256个值来表示其设备号,于是,就需要有一种不同的技术。

    头文件<sys/types.h>中定义了某些与实现有关的数据类型,它们被称为基本系统数据类型(primitive system data type)。还有很多这种数据类型定义在其他头文件中。在头文件中,这些数据类型都是用C的typedef功能来定义的。它们绝大多数都以_t结尾。

    表1 某些常用的基本系统数据类型

    类型 说明
    caddr_t 核心地址
    clock_t 时钟滴答计数器(进程时间)
    comp_t 压缩的时钟滴答
    dev_t 设备号(主和次)
    fd_set 文件描述符集
    fpos_t 文件位置
    gid_t 数值组ID
    ino_t i节点编号
    mode_t 文件类型,文件创建模式
    nlink_t 目录项的链接计数
    off_t 文件大小和偏移量(带符号的)
    pid_t 进程ID和进程组ID(带符号的)
    ptrdiff_t 两个指针相减的结果(带符号的)
    rlim_t 资源限制
    sig_atomic_t 能原子地访问的数据类型
    sigset_t 信号集
    size_t 对象(例如字符串)大小(不带符号的)
    ssize_t 返回字节数的函数(带符号的)(read、write)
    time_t 日历时间的秒计数器
    uid_t 数值用户ID
    wchar_t 能表示所有不同的字符码

    用这种方式定义了这些数据类型后,就不再需要考虑因系统而异的程序实现细节。

    本篇博文内容摘自《UNIX环境高级编程》(第二版),仅作个人学习记录所用。关于本书可参考:http://www.apuebook.com/

  • 相关阅读:
    Spring攻略学习笔记(3.00)AOP核心概念和术语
    zoj 3494
    第43周星期五
    findBugs学习小结
    第42周星期日
    Cookie知识小结
    第42周星期三
    第42周星期六
    第43周星期四小结
    第43周星期二
  • 原文地址:https://www.cnblogs.com/nufangrensheng/p/3497224.html
Copyright © 2011-2022 走看看