#include <unistd.h>
#include <iostream>
//R_OK 4 /* Test for read permission. */
//W_OK 2 /* Test for write permission. */
//X_OK 1 /* Test for execute permission. */
//F_OK 0 /* Test for existence. */
int main() {
using namespace std;
int ret = access(__FILE__, F_OK);
cout << __FILE__ << " is exist:" << ret << endl;
ret = access(__FILE__, R_OK);
cout << __FILE__ << " is readed:" << ret << endl;
ret = access(__FILE__, W_OK);
cout << __FILE__ << " is writed:" << ret << endl;
ret = access(__FILE__, X_OK);
cout << __FILE__ << " is excute:" << ret << endl;
char dir[1024];
getcwd(dir, 1024);
ret = access(dir, F_OK);
cout << dir << " is exist:" << ret << endl;
ret = access(dir, R_OK);
cout << dir << " is readed:" << ret << endl;
ret = access(dir, W_OK);
cout << dir << " is writed:" << ret << endl;
ret = access(dir, X_OK);
cout << dir << " is excute:" << ret << endl;
return 0;
}