Que signifie &~ dans une formule

Résolu/Fermé
astrocurieux Messages postés 334 Date d'inscription mardi 24 février 2015 Statut Membre Dernière intervention 29 novembre 2019 - 27 janv. 2017 à 11:37
[Dal] Messages postés 6057 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 17 mars 2023 - 27 janv. 2017 à 14:05
Bonjour,

je suis en permanence en recherche d'optimisation pour mon code.
ce matin je suis tomber sur une formule bien étrange que je ne comprend pas ...

pouvez vous m'expliquer ce que fait ce bout de code :

int nbr = (sizeof(int) -1) & ~(sizeof(int) -1) ;

if (nbr ...)
{
[...]
}


en soit c'est uniquement la partie "& ~" qui m'intrigue, c'est un opérateur ?
que fait il ?

merci de vos lumière !

1 réponse

[Dal] Messages postés 6057 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 17 mars 2023 1 043
27 janv. 2017 à 13:11
Salut astrocurieux,

& et ~ sont deux opérateurs bit à bit en C

http://www.bien-programmer.fr/bits.htm


Dal
1
astrocurieux Messages postés 334 Date d'inscription mardi 24 février 2015 Statut Membre Dernière intervention 29 novembre 2019 11
27 janv. 2017 à 13:45
merci beaucoup DAL c'est tres claire sur ton site !
0
[Dal] Messages postés 6057 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 17 mars 2023 1 043
27 janv. 2017 à 14:05
Ce n'est pas mon site, c'est celui d'Emmanuel Delahaye :-)
0