kazmax - Linux で自宅サーバー

insque - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 準拠
  5. 歴史的記録

名前

insque, remque - キューにアイテムを挿入/削除する

書式

#include <search.h>

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

説明

insque() と remque() は双方向連結リスト (doubly-linked list)を操作する関数である。 リスト中のそれぞれの要素は、最初の二つの構造体要素が 次と前へのポインタであるような構造体である。
insque() は elem で示される要素を prev で示される 要素の直後に挿入する。 prev は NULL であってはならない。
remque() は elem で示される要素を双方向連結リストから取り除く。

準拠

POSIX.1-2001

歴史的記録

伝統的に(SunOS, Linux libc 4,5 では)これらの関数の引数は struct qelem *型であり、これは以下のように定義されている。

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


この定義は <search.h>をインクルードする前に _GNU_SOURCE を定義することで 得られる。
これらの関数のプロトタイプの置かれる場所は、 UNIX の種類により異なる。 上記は POSIX 版である。<string.h> にあるシステムもある。 Linux libc4,5 は <stdlib.h> にプロトタイプを置いている。