程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C說話中樹立和刪除文件銜接的相干函數講授

C說話中樹立和刪除文件銜接的相干函數講授

編輯:關於C++

C說話中樹立和刪除文件銜接的相干函數講授。本站提示廣大學習愛好者:(C說話中樹立和刪除文件銜接的相干函數講授)文章只能為提供參考,不一定能成為您想要的結果。以下是C說話中樹立和刪除文件銜接的相干函數講授正文


C說話link()函數:樹立文件銜接
頭文件:

#include <unistd.h>

界說函數:

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 <unistd.h>
main()
{
  link("/etc/passwd", "pass");
}

C說話unlink()函數:刪除文件
頭文件:

#include <unistd.h>

界說函數:

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 存取毛病。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved