lsearch(3) Library Functions Manual lsearch(3)

lfind, lsearch - Lineare Suche in einem Feld

Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

#include <search.h>
void *lfind(const void Schlüssel[.Größe], const void Basis[.Größe * .nmemb],
            size_t *nmemb, size_t Größe,
            int(*Vergleich)(const void [.Größe], const void [.Größe]));
void *lsearch(const void Schlüssel[.Größe], void Basis[.Größe * .nmemb],
            size_t *nmemb, size_t Größe,
            int(*Vergleich)(const void [.Größe], const void [.Größe]));

lfind() und lsearch() führen eine lineare Suche nach Schlüssel in dem Feld Basis durch, das *nmemb Elemente der jeweiligen Größe (in Byte) hat. Die durch Vergleich referenzierte Vergleichsfunktion erwartet zwei Argumente, die in dieser Reihenfolge auf das Objekt Schlüssel und auf ein Feldmitglied zeigen und die Null zurückliefert, falls Schlüssel auf das Feldmitglied passt und ansonsten einen von Null verschiedenen Wert.

Falls lsearch() kein passendes Element findet, dann wird das Objekt Schlüssel am Ende der Tabelle eingefügt und *nmemb wird erhöht. Insbesondere sollte bekannt sein, dass ein passendes Element existiert oder dass mehr Platz verfügbar ist.

lfind() liefert einen Zeiger auf ein passendes Element des Feldes zurück oder NULL, falls kein Treffer gefunden wurde. lsearch() liefert einen Zeiger auf ein passendes Mitglied des Feldes oder auf das neu hinzugefügte Mitglied zurück, falls kein Treffer gefunden wurde.

Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

Schnittstelle Attribut Wert
lfind(), lsearch() Multithread-Fähigkeit MT-Sicher

POSIX.1-2008.

POSIX.1-2001, SVr4, 4.3BSD. Libc-4.6.27.

Die Benennung ist unglücklich.

bsearch(3), hsearch(3), tsearch(3)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.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.

31. Oktober 2023 Linux man-pages 6.06