unlink

unlink是一種函式名稱。

基本介紹

  • 外文名:unlink
  • 函式原型:int unlink()
  • 所屬庫:const char * pathname 
  • 相關函式: link,rename
函式簡介,程式示例,

函式簡介

函式名稱:unlink
: );
頭檔案:unistd.h(在WIN32系統中為windows.h)
函式功能:刪除一個檔案的目錄項並減少它的連結數,若成功則返回0,否則返回-1,錯誤原因存於error。如果想通過調用這個函式來成功刪除檔案,你就必須擁有這個檔案的所屬目錄的寫和執行許可權。
,remove
unistd.h的宏定義
#ifdef WIN32#include <windows.h>#else#include <unistd.h>#endif
unlink()會刪除參數pathname指定的檔案。如果該檔案名稱為最後連線點,但有其他進程打開了此檔案,則在所有關於此檔案的檔案描述詞皆關閉後才會刪除。如果參數pathname為一符號連線,則此連線會被刪除。
返回值 成功則返回0,失敗返回-1,錯誤原因存於errno
錯誤代碼 EROFS 檔案存在於唯讀檔案系統內
EFAULT 參數pathname指針超出可存取記憶體空間
ENAMETOOLONG 參數pathname太長
ENOMEM 核心記憶體不足
ELOOP 參數pathname 有過多符號連線問題
EIO I/O 存取錯誤

程式示例

示例1
#include<unistd.h>#include<stdio.h>int main(void){    FILE *fp = fopen("junk.jnk","w");    int status;    fprintf(fp,"junk");    status = access("junk.jnk",0);    if (status == 0)        printf("File exists\n");    else        printf("File doesn't exist\n");    fclose(fp);    unlink("junk.jnk");    status = access("junk.jnk",0);    if (status == 0)        printf("File exists\n");    else        printf("File doesn't exist\n");    return 0;}

相關詞條

熱門詞條

聯絡我們