Man Pages

insque(3) - phpMan insque(3) - phpMan

Command: man perldoc info search(apropos)  

INSQUE(3)                  Linux Programmer's Manual                 INSQUE(3)

       insque, remque - insert/remove an item from a queue

       #include <search.h>

       void insque(void *elem, void *prev);

       void remque(void *elem);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       insque(), remque(): _SVID_SOURCE || _XOPEN_SOURCE >= 500

       insque() and remque() are functions for manipulating doubly-linked lists.  Each element in the list is a struc-
       ture of which the first two structure elements are a forward and a backward pointer.

       insque() inserts the element pointed to by elem immediately after the element pointed to by  prev,  which  must
       not be NULL.

       remque() removes the element pointed to by elem from the doubly-linked list.


       Traditionally  (e.g.,  SunOS,  Linux  libc  4 and libc 5), the arguments of these functions were of type struct
       qelem *, defined as:

           struct qelem {
               struct qelem *q_forw;
               struct qelem *q_back;
               char          q_data[1];

       This is still what you will get if _GNU_SOURCE is defined before including <search.h>.

       The location of the prototypes for these functions differs among several versions of Unix.  The  above  is  the
       POSIX version.  Some systems place them in <string.h>.  Linux libc4 and libc 5 placed them in <stdlib.h>.

       This  page  is part of release 3.22 of the Linux man-pages project.  A description of the project, and informa-
       tion about reporting bugs, can be found at

                                  2008-07-11                         INSQUE(3)