readdir 是一種用來獲取目錄內容的函數,在 C 語言中非常常用。以下是一個簡易的例子,演示了如何運用 readdir 函數來讀取目錄內容:
#include <stdio.h> #include <stdlib.h> #include <dirent.h> #include <string.h> int main() { DIR *directory; struct dirent *file_entry; // 打開目錄 directory = opendir("your_directory_path"); if (directory == NULL) { perror("opendir"); return EXIT_FAILURE; } // 讀取目錄中的條目 while ((file_entry = readdir(directory)) != NULL) { printf("%sn", file_entry->d_name); } // 關閉目錄 closedir(directory); return EXIT_SUCCESS; } </string.h></dirent.h></stdlib.h></stdio.h>
在此例子中,我們先引入了所需的頭文件,接著利用 opendir 函數打開一個目錄。如果操作成功,就可以獲得一個 DIR 類型的指針,它代表了目錄流。
隨后,我們通過 readdir 函數逐一讀取目錄里的每個條目。readdir 返回的是一個指向 dirent 結構體的指針,該結構體里保存著有關目錄條目的信息,例如文件名(d_name 字段)。我們會把這些文件名輸出到屏幕。
最后,我們用 closedir 函數關閉目錄流。
需要指出的是,本例中的目錄路徑是固定的。在真實的程序中,你可能得依據用戶的輸入或者其他因素來確定目錄路徑。