「C言語/標準ライブラリ/stdlib.h」の版間の差分

削除された内容 追加された内容
400 行
*形式
<pre>
#include <stdlib.h>
 
void *bsearch(const void *key, const void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));
</pre>
*引数
:key オブジェクト
:
:base 配列先頭の要素
:nmemb 配列の要素数
:size 配列の要素のサイズ
:compar 比較関数
*返却値
:配列内の一致する要素へのポインタ。一致する要素がないとき、空ポインタ。等しい要素が二つある場合、いずれの要素と一致するかは未規定である。
:
*機能
:bsearch関数とは、先頭の要素をbaseが指す(要素数がnmemb個で各要素の大きさがsizeの)オブジェクトの配列内で、keyが指すオブジェクトに一致する要素を探索する関数である。
:
:comparが指す比較関数は、keyオブジェクトへのポインタを第一実引数とし、配列要素へのポインタを第二実引数として呼び出す。
:その関数は、以下の条件を満たす必要がある。
*keyオブジェクトが配列要素より小さい場合、0より小さい整数を返す
*keyオブジェクトが配列要素と等しい場合、0と等しい整数を返す
*keyオブジェクトが配列要素より大きい場合、0より大きい整数を返す
:配列は、keyオブジェクトと比較して、小さい要素だけの部分、等しい要素だけの部分及び大きい要素だけの部分から構成され、これら3つの部分が、この順序で存在しなければならない。
*例
<pre>
416 ⟶ 427行目:
*形式
<pre>
#include <stdio.h>
 
void qsort(void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));
</pre>
*引数
:base オブジェクト
:
:nmemb 配列の要素数
:size 配列の要素のサイズ
:comar 比較関数
*返却値
:なし
:
*機能
:qsort関数とは、先頭の要素をbaseが指す(要素数がnmemb個で各要素の大きさがsizeの)オブジェクトの配列を整列する関数である。
:
:配列の内容を、comparが指す比較関数に従って昇順に整列する。
:比較関数は、比較されるオブジェクトを指す二つの実引数を持って呼び出す。
:その関数は、以下の条件を満たす必要がある。
*最初の実引数が2番目の実引数より小さい場合、0より小さい整数を返す
*最初の実引数が2番目の実引数と等しい場合、0と等しい整数を返す
*最初の実引数が2番目の実引数より大きい場合、0より大きい整数を返す
:二つの要素が等しいとき、整列された配列内でのそれらの順序は未規定である。
*例
<pre>