C中的 access()函数
来源:互联网 发布:常用的特征选择算法 编辑:程序博客网 时间:2024/06/16 17:33
函数原型:int access(const char* path_name,int mode);
函数功能:判断某个文件是否存在或者是具有某种权限。mode可以为以下参数:
F_OK:判断文件是否存在;
R_OK:判断文件是否具有读权限;
W_OK:判断文件是否具有写权限;
X_OK:判断文件是否具有执行权限;
所需头文件:#include <unistd.h>
注意事项:access()函数只是做权限的检查,并不去考虑文件的形态和内容。所以,当一个目录文件具有写权限时,表示当前目录可以写入,也就是说可以在目录中做创建新文件的操作,但并不是说它就可以当做文件来处理。例如,在DOS下的文件都具有可执行权限,但是使用execve() 函数 执行时则会失败。
函数返回值:函数执行后,如果所有需要检查的权限全部通过,则返回0,只要有一项没有通过检测,就返回-1。
函数使用实例:
#include <stdio.h>#include <unistd.h>int main(void){if(!access("/usr/bin/ldd",F_OK)){printf("文件 /usr/bin/ldd 存在\n");}else{printf("文件 /usr/bin/ldd 不存在\n");}if(!access("/usr/bin/ldd",W_OK)){printf("文件 /usr/bin/ldd 具有 写权限\n");}else{printf("文件 /usr/bin/ldd 不具有 写权限\n");}if(!access("/usr/bin/ldd",R_OK)){printf("文件 /usr/bin/ldd 具有 读权限\n");}else{printf("文件 /usr/bin/ldd 不具有 读权限\n");}if(!access("/usr/bin/ldd",X_OK)){printf("文件 /usr/bin/ldd 具有 执行权限\n");}else{printf("文件 /usr/bin/ldd 不具有 执行权限\n");}return 0;}
函数执行结果:
0 0
- C中的 access()函数
- C中的access函数
- C中的access函数
- C中的access函数
- C中的access函数
- C中的access函数
- C中的access函数
- C中的access函数
- access中的IIf函数
- C函数access
- c语言 access函数
- c语言access函数
- C语言access函数
- Linux c access 函数
- c access函数
- c语言:access函数
- 基础中的基础access函数
- access中的类型转换函数
- 如何留住有能力、负责任又不提要求的员工?——为他的潜力付钱
- 润乾——五种常用web服务器jvm参数设置
- Android重写view时onAttachedToWindow () 和 onDetachedFromWindow ()
- struts的常量配置
- php内置Mysql函数(2)
- C中的 access()函数
- Spring Quartz 定时任务cronexpression详解
- 博客搬家,新开技术微博希望记录我的点点滴滴
- EventQueue事件
- <高质量C>C函数设计基础(一)
- java.lang.instument包超详解
- spring-security3 配置和使用
- 用户研究三部曲:有关用户研究的战略思考
- Hibernate数据库机制测试(一)