C语言中access函数

  

  头文件:io.h
  功 能: 确定文件或文件夹的访问权限。即,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。
  用 法: int access(const char *filenpath, int mode); 或者int_access( const char *path, int mode );
  参数说明:
  filenpath
  文件或文件夹的路径,当前目录 直接使用文件或文件夹名
  备注:当该参数为文件的时候,access函数能使用mode参数所有的值,当该参数为文件夹的时候,access函数值能判断文件夹是否存在。在WIN NT 中,所有的文件夹都有读和写权限
  mode
  要判断的模式
  在头文件unistd.h中的预定义如下:
  #define R_OK 4     /* Test for read permission. */
  #define W_OK 2    /* Test for write permission. */
  #define X_OK 1     /* Test for execute permission. */
  #define F_OK 0     /* Test for existence. */
  具体含义如下:
  R_OK 只判断是否有读权限
  W_OK 只判断是否有写权限
  X_OK 判断是否有执行权限
  F_OK 只判断是否存在

   access函数程序范例(C语言中)
 
    #include <stdio.h>
  #include <io.h>
  int file_exists(char *filename);
  int main(void)
  {
           printf("Does NOTEXIST.FIL exist: %s\n",
           file_exists("NOTEXISTS.FIL") ? "YES" : "NO");
           return 0;
  }
  int file_exists(char *filename)
  {
           return (access(filename, 0) == 0);
  }

注意:
    使用access()作用户认证方面的判断要特别小心,例如在access()后再做open()的空文件可能会造成系统安全上的问题.




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值