C語言中改變目錄的相關(guān)操作函數(shù)詳解
C語言fchdir()函數(shù):改變當(dāng)前工作目錄
頭文件:
#include <unistd.h>
定義函數(shù):
int fchdir(int fd);
函數(shù)說明:fchdir()用來將當(dāng)前的工作目錄改變成以參數(shù)fd 所指的文件描述詞。
返回值:執(zhí)行成功則返回 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);
}
執(zhí)行:
current working directory : /tmp
C語言rewinddir()函數(shù):重設(shè)讀取目錄的位置為開頭位置
頭文件:
#include <sys/types.h> #include <dirent.h>
定義函數(shù):
void rewinddir(DIR *dir);
函數(shù)說明:rewinddir()用來設(shè)置參數(shù)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);
}
執(zhí)行:
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
相關(guān)文章
C++利用隨機(jī)策略實(shí)現(xiàn)優(yōu)化二叉樹操作效率
這篇文章中我們主要來詳細(xì)探討隨機(jī)化二叉搜索樹的基本思想、實(shí)現(xiàn)方法,以及如何在C++中應(yīng)用這些策略來優(yōu)化我們的數(shù)據(jù)結(jié)構(gòu),感興趣的可以了解下2024-02-02
C++ std::condition_variable 條件變量用法解析
condition_variable(條件變量)是 C++11 中提供的一種多線程同步機(jī)制,它允許一個(gè)或多個(gè)線程等待另一個(gè)線程發(fā)出通知,以便能夠有效地進(jìn)行線程同步,這篇文章主要介紹了C++ std::condition_variable 條件變量用法,需要的朋友可以參考下2023-09-09
C++通過自定義函數(shù)找出一個(gè)整數(shù)數(shù)組中第二大數(shù)的方法
這篇文章主要介紹了C++通過自定義函數(shù)找出一個(gè)整數(shù)數(shù)組中第二大數(shù)的方法,涉及C++針對數(shù)組的遍歷操作相關(guān)技巧,需要的朋友可以參考下2015-06-06
C++ deque與vector對比的優(yōu)缺點(diǎn)
這篇文章主要介紹了C++中deque與vector相比的優(yōu)勢與劣勢,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-01-01
VS2022配置編譯使用boost庫的實(shí)現(xiàn)
本文介紹了如何在VS2022中配置和編譯使用Boost庫的步驟,包括下載Boost、解壓、配置環(huán)境變量和編譯等過程,具有一定的參考價(jià)值,感興趣的可以了解一下2024-12-12
C語言輾轉(zhuǎn)相除法求2個(gè)數(shù)的最小公約數(shù)
輾轉(zhuǎn)相除法最大的用途就是用來求兩個(gè)數(shù)的最大公約數(shù)。下面通過本文給大家介紹C語言輾轉(zhuǎn)相除法求2個(gè)數(shù)的最小公約數(shù),非常不錯,感興趣的朋友一起看看吧2016-12-12

