c語言readdir函數用于列出目錄中的文件和子目錄。它定義在
#include <stdio.h> #include <stdlib.h> #include <dirent.h> int main() { DIR *dirp; struct dirent *entry; // 打開當前目錄 dirp = opendir("."); if (dirp == NULL) { perror("opendir"); return EXIT_FAILURE; } // 讀取目錄內容 while ((entry = readdir(dirp)) != NULL) { printf("%s ", entry->d_name); } // 關閉目錄 closedir(dirp); return EXIT_SUCCESS; }
代碼首先包含必要的頭文件,然后使用opendir(“.”)打開當前目錄。 readdir(dirp)函數逐個讀取目錄項,直到返回NULL表示結束。 entry->d_name包含文件名。最后,closedir(dirp)關閉目錄。
需要注意的是,此代碼僅適用于類unix系統(如Linux和macos)。Windows系統需要使用不同的API函數,例如FindFirstFile、FindNextFile和FindClose。