INSQUE(3)

НАЗВАНИЕ
insque, remque - добавляет/удаляет элемент очереди

СИНТАКСИС
#include <stdlib.h>

void insque(struct qelem *elem, struct qelem *prev);
void remque(struct qelem *elem);

ОПИСАНИЕ
Функции insque() и remque() предназначены для управления очередями, созданными из дважды связанных списков. Каждый элемент такого списка имеет тип struct qelem. Структура qelem определена так:
    struct qelem {
        struct    qelem *q_forw;
        struct    qelem *q_back;
        char      q_data[1];
    };
Функция insque() вставляет в список элемент, на который указывает elem, сразу за элементом, на который указывает prev (последний НЕ ДОЛЖЕН быть равным NULL). Функция remque() удаляет элемент, на который указывает elem, из дважды связанного списка.

СООТВЕТСТВИЕ СТАНДАРТАМ
SVR4

НАЙДЕННЫЕ ОШИБКИ
Поле q_data иногда определено как тип char *, а в системах solaris 2.x такого типа, кажется, вовсе не существует. Расположение прототипов этих функций отличается в различных версиях UNIX. Некоторые системы располагают их в <search.h>, другие - в <string.h>. А в Linux они находятся в <stdlib.h>; в данной ОС это - самое подходящее для них место. Некоторые версии UNIX (например, HP-UX 10.x) не определяют struct qelem, но требуют, чтобы параметры insque() и remque() были типа void *.