新闻资讯
看你所看,想你所想

access(C语言函式名)

access(C语言函式名)

access to作为有权使用什幺,即可理解access()函式想表达有做某事的许可权。函式参数有两个,第一个为档案,那幺对应的第二个参数就不难推想出为档案有那些许可权和是否存在。

头档案:unistd.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 只判断是否存在
在宏定义里面分别对应:
00 只存在
02 写许可权
04 读许可权
06 读和写许可权
access函式程式範例(C语言中)
#include <stdio.h>
#include <unistd.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);
}

相关推荐

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com