sysconf、pathconf和fpathconf函数
来源:互联网 发布:链轮设计参数计算软件 编辑:程序博客网 时间:2024/05/24 01:20
函数原型:
long sysconf(int name);
long pathconf(const char *pathname, int name);
long fpathname(int filedes, int name);
所有函数返回值:若成功则返回相应值;若出错则返回-1.
后两个函数的差别在于一个用路径名作为其参数,另一个则取文件描述符则为参数。
表2-10中列出了sysconf函数所使用的name参数,用于标识系统限制。以_SC_开始的长廊用作标示运行时限制的sysconf参数。表2-11列出了pathconf和fpathconf函数为标示系统限制所使用的name参数。以_PC_开始的常量用作标示运行时限制的pathconf或fpathconf的参数。
三个函数的返回值说明如下:
1,如果name不是表2-10和2-11的第三列中的一个合适的常量,则所有这三个函数都会返回-1,并将errno设置为EINVAL;
2,有些name可以返回变量的值(返回值大于等于0),或者返回-1,这表示该值是不确定的,此时并不改变errno的值;
3,_SC_CLK_TCK的返回值是每秒钟的时钟滴答数,以用于times函数的返回值。
对于pathconf的参数pathname以及fpathconf的参数filedes有一些限制。如果不满足其中任何一个限制,则结果是未定义的。
1,_PC_MAX_CANON和_PC_MAX_INPUT所音乐呢的文件必须是终端文件;
2,_PC_LINK_MAX所引用的文件可以使文件或目录。如果是目录,则返回值用于目录本身(而不是用于目录内的文件名项);
3,_PC_FILESIZEBITS和_PC_NAME_MAX所引用的文件必须是目录,返回值用于该目录中的文件名;
4,_PC_PATH_MAX引用的文件必须是目录。当所指定的目录是工作目录时,返回值是相对路径名的最大长度;
5,_PC_PIPE_BUF所引用的文件必须是管道、FIFO或目录。在管道或者FIFO情况下,返回值是对所引用的管道或FIFO的限制值。对于目录,返回值是对在该目录中创建的任一FIFO的限制值;
6,_PC_SYMLINK_MAX所引用的文件必须是目录。返回值是该目录中符号链接可能包含的字符串的最大长度。
对于选项的处理与对限制的处理类似。Single UNIX Specification定义了三种处理方法:
- sysconf、pathconf和fpathconf函数
- sysconf、pathconf和fpathconf函数
- sysconf、pathconf和fpathconf函数
- sysconf()、pathconf()和fpathconf()函数
- sysconf()、pathconf()和fpathconf()函数
- sysconf、pathconf和fpathconf函数
- sysconf、pathconf和fpathconf函数
- sysconf()、pathconf()和fpathconf()函数
- sysconf、pathconf和fpathconf
- sysconf,pathconf和fpathconf
- [unix]sysconf、pathconf和fpathconf
- UNIX环境高级编程笔记1-sysconf、pathconf和fpathconf函数
- [UNIX编程笔记] 【APUE-4】 UNIX标准化及实现与sysconf、fpathconf、pathconf函数
- Linux系统调用--getrlimit()与setrlimit()函数详解-sysconf/getconf/fpathconf/pathconf
- Linux pathconf sysconf函数
- APUE 2-14 打印所有可能的sysconf和pathconf
- fpathconf函数
- pathconf函数
- [心得感想]16.7.14-21 DIARY
- 神级代码编辑软件(Sublime Text 3) v3.3114 汉化特别版
- Django中实现文件下载功能
- JavaScript踩坑小计——变量的作用域和类型声明
- java异常机制
- sysconf、pathconf和fpathconf函数
- poj 3254
- Java Iterator
- 利用jquery写无缝循环滑动的轮播图
- Html.ActionLink无法跳转
- ionic 中$ionicView.beforeEnter 事件的一个bug
- Swoole Framework 入门教程(1)
- Android中visibility属性VISIBLE、INVISIBLE、GONE的区别
- 6. ZigZag Conversion