A self-referential structure is a data structure that includes references to other data of its same type. A simple example of this would be an implementation in C of a linked list:

           typedef struct listnode {
               void *data;
               struct listnode *next;
           } list_t;
       

The reference to a listnode struct from within a listnode struct is the self-referential aspect of the structure.