Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé

Macro générique stdc_first_trailing_one (C23)

Entête à inclure

#include <stdbit.h>

Macro générique stdc_first_trailing_one

stdc_first_trailing_one( value )

La macro stdc_first_trailing_one retourne la position du premier bit à 1 en partant du bit de poids faible, ou 0 s'il n'y en a pas. Elle accepte les types entiers non signés pris en charge par <stdbit.h> et sélectionne la fonction spécialisée adaptée.

Les positions retournées par les fonctions stdc_first_* sont numérotées à partir de 1.

Paramètres

Valeur de retour

Cette macro retourne une valeur de type unsigned int.

Fonctions spécialisées

Nom Prototype
stdc_first_trailing_one_uc unsigned int stdc_first_trailing_one_uc( unsigned char value );
stdc_first_trailing_one_us unsigned int stdc_first_trailing_one_us( unsigned short value );
stdc_first_trailing_one_ui unsigned int stdc_first_trailing_one_ui( unsigned int value );
stdc_first_trailing_one_ul unsigned int stdc_first_trailing_one_ul( unsigned long value );
stdc_first_trailing_one_ull unsigned int stdc_first_trailing_one_ull( unsigned long long value );

Exemple de code

L'exemple suivant applique cette opération à une valeur simple.

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
#include <stdbit.h>
#include <stdio.h>
#include <stdlib.h>

int main() {

    unsigned char value = (unsigned char) 0x08u;

    printf( "%u\n", (unsigned int) stdc_first_trailing_one( value ) );
    return EXIT_SUCCESS;
}
Exemple d'utilisation de stdc_first_trailing_one

Cet exemple produit l'affichage suivant.

4

Sujets connexes

La librairie <stdbit.h>
macros d'endianness


Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé