je parcours un code et je suis tombé à plusieurs reprise sur des affectations avec des doubles logical NOT (!)
par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
void func(int var)
{
var = !!var;
...
}
et non ce n'est pas pour faire peter un warning 'variable not used', vu que la variable est bel est bien utilisé
je penche pour quelque chose genre 'unification des valeurs vrai'

on sais tous que faux c'est 0
et que vrai c'est different de 0
donc faire ça, ça reviens à laisser à 0 une valeur à 0 et à passer à une valeur X (valeur non connu, mais constante car j'imagine que l'implementation de l'operateur logical not ne fasse pas d'appels à rand() ) une valeur differente de 0

quelqu'un peut il éclairer ma lanterne?