opendir(3) | Library Functions Manual | opendir(3) |
opendir - ein Verzeichnis öffnen
Standard-C-Bibliothek (libc, -lc)
#include <sys/types.h> #include <dirent.h>
DIR *opendir(const char *name); DIR *fdopendir(int dd);
fdopendir():
Seit Glibc 2.10: _POSIX_C_SOURCE >= 200809L Vor Glibc 2.10: _GNU_SOURCE
Die Funktion opendir() öffnet einen Verzeichnis-Datenstrom der dem Verzeichnis name entspricht und liefert einen Zeiger auf den ersten Eintrag des Verzeichnisses zurück.
Die Funktion fdopendir() ähnelt opendir(), gibt aber eine Folge der Verzeichniseinträge für das Verzeichnis zurück, auf das der Dateideskriptor dd verweist. Nach einem erfolgreichen Aufruf von fdopendir() wird dd intern von der Implementierung benutzt und sollte nicht anderweitig von der Anwendung benutzt werden.
Die Funktionen opendir() und fdopendir() liefern einen Zeiger auf den Verzeichnis-Datenstrom zurück. Bei einem Fehler wird ein NULL zurückgegeben und errno gesetzt, um den Fehler anzuzeigen.
fdopendir() ist seit Glibc 2.4 verfügbar.
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
Schnittstelle | Attribut | Wert |
opendir(), fdopendir() | Multithread-Fähigkeit | MT-Safe |
opendir() ist auf SVr4 und 4.3BSD vorhanden und in POSIX.1-2001 spezifiziert. fdopendir() ist in POSIX.1-2008 spezifiziert.
Dateinameneinträge können mittels readdir(3) aus einem Verzeichnis-Stream gelesen werden.
Der zugrundeliegende Dateideskriptor des Verzeichnis-Datenstroms kann mit dirfd(3) abgefragt werden.
Die Funktion opendir() setzt dem Schalter »close-on-exec« für den Dateideskriptor, der DIR * zugrundeliegt. Die Funktion fopendir() lässt die Einstellung des Schalter »close-on-exec« für den Dateideskriptor dd unverändert. POSIX.1-200x spezifiziert nicht, ob ein erfolgreicher Aufruf von fdopendir() den Schalter »close-on-exec« für den Dateideskriptor dd setzt.
open(2), closedir(3), dirfd(3), readdir(3), rewinddir(3), scandir(3), seekdir(3), telldir(3)
Die deutsche Übersetzung dieser Handbuchseite wurde von Markus Kaufmann <markus.kaufmann@gmx.de> und Chris Leick <c.leick@vollbio.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.
15. Dezember 2022 | Linux man-pages 6.03 |