Freigeben über


EngSort-Funktion (winddi.h)

Die EngSort-Funktion führt eine Schnellsortierung für die angegebene Liste aus.

Syntax

ENGAPI VOID EngSort(
  [in, out] PBYTE    pjBuf,
  [in]      ULONG    c,
  [in]      ULONG    cjElem,
  [in]      SORTCOMP pfnComp
);

Parameter

[in, out] pjBuf

Zeiger auf das zu sortierende Datenarray.

[in] c

Gibt die Größe jedes Elements in pjBuf in Bytes an.

[in] cjElem

Gibt die Anzahl der zu sortierenden Elemente in pjBuf an.

[in] pfnComp

Zeiger auf eine Funktion, die den Elementvergleich implementiert, der für die Sortierung verwendet werden soll.

Rückgabewert

Keine

Bemerkungen

EngSort implementiert einen Schnellsortierungsalgorithmus zum Sortieren von cjElem-Elementen in pjBuf, wobei jedes Element die Größe c aufweist. Die sortierten Elemente werden in pjBuf zurückgegeben; Das heißt, der ursprüngliche Inhalt des Puffers wird mit den sortierten Ergebnissen überschrieben.

Die Grundlage für den Vergleich zweier Elemente ist in der Funktion definiert, auf die pfnComp verweist. Diese Funktion wird wie folgt im Prototyp erstellt:

int (__cdecl *SORTCOMP)(const void *pv1, const void *pv2);

wobei pv1 und pv2 auf die beiden zu vergleichenden Elemente verweisen. Der Rückgabewert ist das Ergebnis des wie folgt definierten Vergleichs:

Rückgabewert Bedeutung
Negative Ganzzahl *pv1<*pv2
Null *pv1 == *pv2
Positive ganze Zahl *pv1>*pv2
 

Das Array wird in zunehmender Reihenfolge sortiert, die durch den pfnComp-Parameter definiert wird.

Anforderungen

   
Unterstützte Mindestversion (Client) Verfügbar in Windows 2000 und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Universell
Header winddi.h (einschließlich Winddi.h)
Bibliothek Win32k.lib
DLL Win32k.sys