Bonjour.

J'ai un problème assez simple et j'aimerai savoir quelle est la méthode la plus rapide (pas la méthode naive qui consiste à diviser mon nombre par des puissances successives de 2) pour remplir un tableau de booléens à partir de la représentation binaire d'un nombre.

J'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
unsigned long long int n // (entier 64 bits)
bool nbinary[64]
et je veux remplir nbinary selon la représentation binaire de n (et je veux quelque chose de portable quelque soit l'endianness du système (par exemple nbinary[3] sera toujours associé à 2^3)).

Par exemple pour n = 13 (en base 2 : 1101), j'aurai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
nbinary[0] = true; 
nbinary[1] = false; 
nbinary[2] = true; 
nbinary[3] = true; 
nbinary[4] jusqu'à nbinary[63] = false;
Merci beaucoup