unistd h中的zhaccess函式

2021-08-18 10:33:52 字數 741 閱讀 6358

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中的預定義如下:

具體含義如下:

r_ok 只判斷是否有讀許可權

w_ok 只判斷是否有寫許可權

x_ok 判斷是否有執行許可權

f_ok 只判斷是否存在

在巨集定義裡面分別對應:

00 只存在

02 寫許可權

04 讀許可權

06 讀和寫許可權

access函式程式範例(c語言中)

測試 unistd h 中的getopt

測試 getopt 全域性資料 opterr 預設值1 置0不輸出錯誤資訊 沒有指定的引數 要求有value的引數沒設定value optarg char 型別,指向key對應的value,遇未設定或開關引數為null optind 下乙個要處理的argv下標 getopt返回int表示找到的的ke...

VS中無法識別unistd h的問題

vs 無法開啟原始檔 unistd.h 許多在linux下開發的c程式都需要標頭檔案unistd.h,但vc中沒有個頭檔案,所以用vc編譯總是報錯。把下面的內容儲存為unistd.h,放在visual stdio標頭檔案路徑下,可以解決這個問題 unistd.h在unix中類似於window中的wi...

Python中的descriptor中的一點疑問

在我的印象中,類中的函式是可以有兩種呼叫方式的,如下 class b def func self return 10 b b b.func b.func b 於是,在之前研究descriptor的時候,我就有了幾點困惑 我將 更換成了如下兩個版本 版本1 import time class lazy...