LIST_ENTRY structure (ntdef.h)

Une structure LIST_ENTRY décrit une entrée dans une liste doublement liée ou sert d’en-tête pour une telle liste.

Syntaxe

typedef struct _LIST_ENTRY {
  struct _LIST_ENTRY *Flink;
  struct _LIST_ENTRY *Blink;
} LIST_ENTRY, *PLIST_ENTRY, PRLIST_ENTRY;

Membres

Flink

Pour une structure LIST_ENTRY qui sert d’entrée de liste, le membre Flink pointe vers l’entrée suivante de la liste ou vers l’en-tête de liste s’il n’y a pas d’entrée suivante dans la liste.

Pour une structure LIST_ENTRY qui sert d’en-tête de liste, le membre Flink pointe vers la première entrée de la liste ou vers la structure LIST_ENTRY elle-même si la liste est vide.

Blink

Pour une structure LIST_ENTRY qui sert d’entrée de liste, le membre Blink pointe vers l’entrée précédente de la liste ou vers l’en-tête de liste s’il n’y a pas d’entrée précédente dans la liste.

Pour une structure LIST_ENTRY qui sert d’en-tête de liste, le membre Blink pointe vers la dernière entrée de la liste ou vers la structure LIST_ENTRY elle-même si la liste est vide.

Remarques

Une structure LIST_ENTRY qui décrit l’en-tête de liste doit avoir été initialisée en appelant InitializeListHead.

Un pilote peut accéder aux membres Flink ou Blink d’un LIST_ENTRY, mais les membres doivent uniquement être mis à jour par les routines système fournies à cet effet.

Pour plus d’informations sur l’utilisation de structures LIST_ENTRY pour implémenter une liste doublement liée, consultez Listes singly and Doubly Linked.

Configuration requise

Condition requise Valeur
En-tête ntdef.h (include Wdm.h, Ntddk.h)

Voir aussi

ExInterlockedInsertHeadList

ExInterlockedInsertTailList

ExInterlockedRemoveHeadList

InitializeListHead

InsertHeadList

InsertTailList

IsListEmpty

RemoveEntryList

RemoveHeadList

RemoveTailList