alca06
Messages postés7Date d'inscriptionlundi 7 juin 2004StatutMembreDernière intervention27 juin 2004
-
23 juin 2004 à 14:02
alca06
Messages postés7Date d'inscriptionlundi 7 juin 2004StatutMembreDernière intervention27 juin 2004
-
24 juin 2004 à 09:58
Quelle est la meilleure solution, la plus rapide et la plus sûre... pour savoir si le fichier existe ou si le nom spécifié est un répertoire ?
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 24 juin 2004 à 00:24
Brunews> Tu les trouves ou toutes ces constantes ? (0x80000000)
Ca correspond a quoi exactement ?
Quand tu mets un seul "&" ca correspond a quoi exactement ?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 juin 2004 à 00:43
par simple logique, si le fichier ou dossier passe en param n'est pas trouve, c'est le seul cas ou le bit 31 (le dernier) est positionne.
'&' est test binaire, c'est le AND en logique booleenne.
Quand on met cela comme ici dans un 'if', le compilo comprend qu'on ne veut pas affecter la valeur mais seulement voir l'etat du test, il va donc generer le code asm correct:
test eax, 80000000h
qui est la plus rapide, le 'and' aurait modifie 'eflags' et eax alors que 'test' modifie 'eflags' et stoppe son travail.