📄 access_.c
字号:
/*char id_access[] = "@(#)access_.c 1.3"; * * determine accessability of a file * * calling format: * integer access * ierror = access(filename, mode) * where: * ierror will be 0 for successful access; an error number otherwise. * filename is a character string * mode is a character string which may include any combination of * 'r', 'w', 'x', ' '. (' ' => test for existence) */#include "../libI77/f_errno.h"#include <sys/param.h>#ifndef MAXPATHLEN#define MAXPATHLEN 128#endiflong access_(name, mode, namlen, modlen)char *name, *mode;long namlen, modlen;{ char buf[MAXPATHLEN]; int m = 0; if (namlen >= sizeof buf) return((long)(errno=F_ERARG)); g_char(name, namlen, buf); if (buf[0] == '\0') return((long)(errno=ENOENT)); if (access(buf, 0) < 0) return((long)errno); while (modlen--) switch(*mode++) { case 'x': m |= 1; break; case 'w': m |= 2; break; case 'r': m |= 4; break; } if (m > 0 && access(buf, m) < 0) return((long)errno); return(0L);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -