C言語学習ポータル(無料版) 学習コンテンツ 関数リファレンス stdc_leading_zeros

🔧 C23 ・ stdbit.h ・ C23

stdc_leading_zeros の使い方

C言語 標準ライブラリ関数リファレンス(無料公開)

書式

unsigned int stdc_leading_zeros(x);

どんな関数か

符号無し整数の最上位ビットから連続する0の個数を数えるC23の型総称関数(マクロ)。ビット幅の判定やビット演算を使った最適化のコードでよく使われる。 unsigned charからunsigned long longまで様々な整数型に対して同じ名前のマクロで動作する型総称の仕組みを持つ。

使用例

#include <stdbit.h>
#include <stdio.h>
int main(void) {
    unsigned int x = 1;
    printf("%u\n", stdc_leading_zeros(x));
    return 0;
}

つまずきやすい注意点

⚠️ 引数が0のときの結果は型のビット幅そのものになる(規格で定義済み)。処理系間の互換のため確認しておく。

アプリの関数リファレンスで引く(無料・登録不要) 関数一覧へ

stdc_leading_zeros と一緒に使う関数

stdc_trailing_zeros符号無し整数の最下位ビットから連続する0の個数を数えるC23の型総称関数。値が2の何乗で割り切れるかの判定や、ビット走査… stdc_bit_width符号無し整数の値を表現するのに必要な最小ビット数を返すC23の型総称関数。0を渡すと0を返す。値の2進数での桁数を求めた…

同じ分類(C23)の関数

ckd_add ckd_mul ckd_sub free_aligned_sized free_sized stdc_bit_ceil stdc_bit_floor stdc_bit_width stdc_count_ones stdc_count_zeros stdc_has_single_bit stdc_trailing_zeros strndup

もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。

完全版(BOOTH)を見る