在C++中,access
函數用于檢查文件或目錄是否存在以及是否具有特定的訪問權限。該函數定義在<unistd.h>
頭文件中。
以下是access
函數的原型:
int access(const char *pathname, int mode);
其中,pathname
是要檢查的文件或目錄的路徑,mode
是要檢查的權限。mode
參數可以是以下值之一:
F_OK
:檢查文件是否存在R_OK
:檢查讀權限W_OK
:檢查寫權限X_OK
:檢查執行權限access
函數返回值為0表示成功,-1表示失敗。
以下是一個使用access
函數的示例:
#include <iostream>
#include <unistd.h>
int main() {
const char *filename = "example.txt";
if (access(filename, F_OK) == 0) {
std::cout << "File exists" << std::endl;
} else {
std::cout << "File does not exist" << std::endl;
}
if (access(filename, R_OK) == 0) {
std::cout << "File is readable" << std::endl;
} else {
std::cout << "File is not readable" << std::endl;
}
return 0;
}
在上面的示例中,首先檢查文件是否存在,然后檢查文件是否可讀。根據access
函數的返回值,輸出相應的信息。