« gmp_scan0
gmp_setbit »

gmp_scan1

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

gmp_scan1 — 1 を探す

説明

function gmp_scan1(GMP|int|string $num1, int $start): int

ビット start から最上位ビットの方に、 セットされているビットが最初に見付かるまで num1 をスキャンします。

パラメータ

num1

スキャンする数。

GMP オブジェクト、int、 あるいは数値として解釈可能な string。 文字列の場合、gmp_init() で基数を自動検出するとき (base に 0 を指定したとき) と同じ方法で解釈されます。

start

開始するビット。

戻り値

ビットが見つかった場所のインデックスを整数値で返します。 セットされているビットが存在しない場合には -1 を返します。

例

例1 gmp_scan1() の例

<?php
// 0 番目から探しはじめ、3 番目の位置に "1" ビットが見つかります
$s1 = gmp_init("01000", 2);
echo gmp_scan1($s1, 0) . "\n";

// 5 番目から探しはじめ、9 番目の位置に "1" ビットが見つかります
$s2 = gmp_init("01000001111", 2);
echo gmp_scan1($s2, 5) . "\n";
?>

上の例の出力は以下となります。

3
9

関連キーワード:
ビット   scan   start   init   セット   スキャン   解釈   setbit   最上位   最初   数値   基数   検出   base   方法   開始   場所   インデックス   整数
関連する関数・ページ:
function.gmp-scan0   function.yaz-scan-result   function.yaz-scan   function.gmp-xor   function.gmp-and   function.gmp-setbit