C語言中建立和刪除檔案連線的相關函式講解

2022-10-04 03:45:08 字數 1354 閱讀 1240

c語言link()函式:建立檔案連線

標頭檔案:

#inclwww.cppcns.comude

定義函式:

int link (const char * oldpath, const char * newpath);

函式說明:link()以引數newpath 指定的名稱來建立乙個新的連線(硬連線)到引數oldpath 所指定的已存在檔案.程式設計客棧 如果引數newpath 指定的名稱為一已存在的檔案則不會建立連線.

返回值:成功則返回0, 失敗返回-1, 錯誤原因存於errno.

附加說明:link()所建立的硬連線無法跨越不同檔案系統, 如果需要請改用symlink().

錯誤**:

1、exdev 引數oldpath 與newpath 不是建立在同一檔案系統.

2、eperm 引數oldpath 與newpath 所指的檔案系統不支援硬連線

3、erofs 檔案存在於唯讀檔案系統內

4、efault 引數oldpath 或newpath 指標超出可訪問記憶體空間.

5、enametollong 引數oldpath 或newpath 太長

6、enomem 核心記憶體不足

7、eexist 引數newpath 所指的檔名已存在程式設計客棧.

8、emlink 引數oldpath 所指的檔案已達最大連線數目.

9、eloop 引數pathname 有過多符號連線問題

10、enospc 檔案系統的剩餘空間不足.

11、eio i/o 訪問錯誤.

範例:/* 建立/etc/passwd 的硬連線為pass */

#include

main()

c語言unlink()函式:刪除檔案

標頭檔案:

#include

定義函式:

int unlink(const char * pathname);

函式說明:unlink()會刪除引數pathname 指定的檔案. 如果該檔名為最後連線點, 但有其他程序開啟了此檔案, 則在所有關於此檔案的檔案描述詞皆關閉後才會刪除. 如果引數pathname 為一符號連線, 則此連線會被刪除。

返回值:成功則返回0, 失敗返回-1, 錯誤原因存於errno

錯誤**:

1、erofs 檔案存在於唯讀檔案系統內。

2、efault 引數pathname 指標超出可訪問記憶體空間。

3、enametoolong 引數pathname 太長。

4、enomem 核心記憶體不足。

5、eloop 引數pathname 有過多符號連線問題。

6、eio i/o 訪問錯誤。

本文位址: /ruanjian/c/130508.html

C語言中樹的建立和遍歷

樹的遍歷分為三種 前序遍歷 根左右 中序遍歷 左根右 後序遍歷 左右根 ps 根左右,就是先遍歷根節點,然後是左子樹,最後是右子樹。如下圖 前序遍歷 abdecf。中序遍歷 dbeacf。後序遍歷 debfca。pps 有一種更便捷的方法來寫出三種遍歷的結果 從根節點開始,從左面畫線,將樹沿著邊界圈...

C 檔案操作 建立和刪除資料夾

1 採用createdirectory函式 cstring strpath getmodulefilename null,strpath.getbuffersetlength max path 1 max path strpath.releasebuffer int pos strpath.reve...

C 簡單建立和刪除資料夾

文章 c 中對資料夾操作需要用到directory class。其中提供了建立 刪除 移動 列舉等靜態方法。該類不能被繼承。以下 實現了建立資料夾。if directory.exists spath 以下是msdn上directory class的sample code。以下 首先檢查指定的資料夾是...