access()函数的用法

编程知识 更新时间:2023-04-06 10:52:03

1.函数功能:

检查调用进程是否可以对指定的文件执行某种操作。

2.函数原型:

1)函数头文件

    #include <stdio.h>
    #include <unistd.h>


2)函数

int access(const char * pathname, int mode)


3)形参

pathname:需要检测的文件路劲名

mode:需要测试的操作模式。

4)函数返回值说明

成功执行时,返回0。失败返回-1,errno被设为以下的某个值
EINVAL: 模式值无效
EACCES: 文件或路径名中包含的目录不可访问
ELOOP : 解释路径名过程中存在太多的符号连接
ENAMETOOLONG:路径名太长
ENOENT:路径名中的目录不存在或是无效的符号连接
ENOTDIR: 路径名中当作目录的组件并非目录
EROFS: 文件系统只读
EFAULT: 路径名指向可访问的空间外
EIO:输入输出错误
ENOMEM: 不能获取足够的内核内存
ETXTBSY:对程序写入出错

5)mode说明

    R_OK      测试读许可权
    W_OK      测试写许可权
    X_OK      测试执行许可权
    F_OK      测试文件是否存在

3.函数实例

    #include <stdio.h>
    #include <unistd.h>
     
    int main(void)
    {
    if(access("test.txt", R_OK)==0)  printf("READ OK\n");
     if(access("test.txt", W_OK)==0)  printf("WRITE OK\n");
     if(access("test.txt", X_OK)==0)  printf("EXEC OK\n");
     if(access("test.txt", F_OK)==0)   printf("File exist\n");
    }
 

更多推荐

access()函数的用法

本文发布于:2023-04-06 10:52:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/77a2195cea1ceed1768e426de674dbaa.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:函数   access

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 49153文章数
  • 14阅读数
  • 0评论数