程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C說話中轉變目次的相干操作函數詳解

C說話中轉變目次的相干操作函數詳解

編輯:關於C++

C說話中轉變目次的相干操作函數詳解。本站提示廣大學習愛好者:(C說話中轉變目次的相干操作函數詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是C說話中轉變目次的相干操作函數詳解正文


C說話fchdir()函數:轉變以後任務目次
頭文件:

 #include <unistd.h>

界說函數:

int fchdir(int fd);

函數解釋:fchdir()用來將以後的任務目次轉變成以參數fd 所指的文件描寫詞。

前往值:履行勝利則前往 0, 掉敗前往-1, errno 為毛病代碼.

典范

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
main()
{
  int fd;
  fd = open("/tmp", O_RDONLY);
  fchdir(fd);
  printf("current working directory : %s \n", getcwd(NULL, NULL));
  close(fd);
}

履行:

current working directory : /tmp

C說話rewinddir()函數:重設讀取目次的地位為開首地位
頭文件:

#include <sys/types.h>  #include <dirent.h>

界說函數:

void rewinddir(DIR *dir);

函數解釋:rewinddir()用來設置參數dir 目次流今朝的讀取地位為本來開首的讀取地位.

毛病代碼:EBADF dir 為有效的目次流。

典范

#include <sys/types.h>
#include <dirent.h>
#include <unistd.h>
main()
{
  DIR * dir;
  struct dirent *ptr;
  dir = opendir("/etc/rc.d");
  while((ptr = readdir(dir)) != NULL)
  {
    printf("d_name : %s\n", ptr->d_name);
  }
  rewinddir(dir);
  printf("readdir again!\n");
  while((ptr = readdir(dir)) != NULL)
  {
    printf("d_name : %s\n", ptr->d_name);
  }
  closedir(dir);
}

履行:

d_name : .
d_name : ..
d_name : init.d
d_name : rc0.d
d_name : rc1.d
d_name : rc2.d
d_name : rc3.d
d_name : rc4.d
d_name : rc5.d
d_name : rc6.d
d_name : rc
d_name : rc.local
d_name : rc.sysinit
readdir again!
d_name : .
d_name : ..
d_name : init.d
d_name : rc0.d
d_name : rc1.d
d_name : rc2.d
d_name : rc3.d
d_name : rc4.d
d_name : rc5.d
d_name : rc6.d
d_name : rc
d_name : rc.local
d_name : rc.sysinit

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