Content-type: text/html
insque, remque - Inserts or removes an element in a queue
Standard C Library (libc.a, libc.so)
#include <search.h>
void insque(
void *element,
void *pred);
Interfaces documented on this reference page conform to industry standards as follows:
insque(), remque(): XPG4-UNIX
Refer to the standards(5) reference page for more information about industry standards and associated tags.
Points to the element in the queue immediately before the element to be inserted. Points to the element to be inserted or deleted.
The insque() and remque() functions manipulate queues built from doubly-linked lists. The queue can be either circular or linear.
An application using these functions must define a structure in which the first two members are pointers to the same type of structure and any further members are application-specific. The first member of the structure is a forward pointer to the next entry in the queue. The second member is a backward pointer to the previous entry in the queue. If the queue is linear, it is terminated with null pointers.
The insque() function inserts the element pointed to by element into a queue immediately after the element pointed to by pred.
The remque() function removed the element pointed to by element from a queue.
When using the queue as a linear list, the forward and backward pointers of element can be initialized to null pointers by invoking
insque (&element, NULL);
where element is the initial element of the queue.
When using the queue as a circular list, the application must initialize the forward pointer and the backward pointer of the initial element of the queue to the element's own address.
The insque() and remque() functions do not return a value.
Standards: standards(5) delim off