ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2. Unix标准

2021-10-13 19:06:09  阅读:148  来源: 互联网

标签:文件 限制 PC MAX 数据类型 标准 Unix 目录


2.2.1   ISO C

ISO C标准定义的头文件
图2-1 ISO C标准定义的头文件

2.2.2 IEEE POSIX

头文件说明
<aio.h>异步I/O
<cpio.h>cpio归档值
<dirent.h>目录项
<dlfcn.h>动态链接
<fcntl.h>文件控制
<fnmath.h>文件名匹配类型
<glob.h>路径名模式匹配与生成
<grp.h>组文件
<iconv.h>代码集变换实用程序
<langinfo.h>语言信息常量
<monetary.h>货币类型与函数
<netdb.h>网络数据库操作
<nl_types.h>消息类
<poll.h>投票函数
<pthread.h>线程
<pwd.h>口令文件
<regex.h>正则表达式
<sched.h>执行调度
<semapohore.h>信号量
<strings.h>字符串操作
<tar.h>tar归档值
<termios.h>终端I/O
<unistd.h>符号常量
<wordexp.h>字扩充类型
<arpa/inet.h>因特网定义
<net/if.h>套接字本地接口
<netinet/in.h>因特网地址族
<netinet/tcp.h>传输控制协议定义
<sys/mman.h>存储管理声明
<sys/select.h>select函数
<syd/socket.h>套接字接口
<sys/stat.h>文件状态
<sys/statvfs.h>文件系统信息
<sys/times.h>进程时间
<sys/types.h>基本系统数据类型
<sys/un.h>UNIX域套接字定义
<sys/utsname.h>系统名
<sys/wait.h>进程控制

2.5.1 ISO C限制

  所有编译时限制都定义在<limits.h>,这些限制常量在一个给定系统中并不会改变.
比如:

名称典型值
CHAR_BIT8
CHAR_MIN-128
CHAR_MAX127
INT_MIN-2147483648
INT_MAX2147483647
MB_LEN_MAX 在一个多字节字符常量中的最大字节数6

2.5.4 运行时限制

  某些限制值可能会更改,因为它们与文件和目录相关联,必须在运行时确定.

#include <unistd.h>

long sysconf(int ,name);
long pathconf(const char *pathname, int name);
long fpathconf(int fd,int name);

  图2-10 列出了sysconf函数所使用的name参数,它用于标识系统限制,以_SC_ 开始的常量用作标识运行时限制的sysconf参数.
  最后两个函数之间的差别是一个用路径名作为其参数,另一个则取文件描述符作为参数.
在这里插入图片描述
  对于pathconf的参数pathnamefpathconf的参数fd有很多限制。如果不满足其中任一个限制,则结果是未定义的。
包括:

  1. _PC_MAX_CANON_PC_MAX_INPUT引用的文件必须是终端文件。
  2. _PC_LINK_MAX_PC_TIMESTAMP_RESOLUTION引用的文件可以是文件或目录。如果是目录,则返回值用于目录本身,而不用于目录内的文件名项。
  3. _PC_NAME_MAX引用的文件必须是目录,返回值用于该目录中的文件名
  4. _PC_PATH_MAX引用的文件必须是目录。当所指定的目录是工作目录时,返回的是相对路径名的最大长度(而我们大部分情况下想要的是绝对路径名的最大长度)
    在这里插入图片描述

2.8 基本系统数据类型

头文件<sys/types.h>中定义了一些和实现会用到的数据类型,他们被约定俗成,被称为基本系统数据类型,还有很多在其他头文件中,这些数据类型都是通过typedef方式来定义的。

在这里插入图片描述

标签:文件,限制,PC,MAX,数据类型,标准,Unix,目录
来源: https://blog.csdn.net/qq_34799070/article/details/120718101

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有