bonjour,
je suis débutant en delphi et j'espère connaitre le rôle ce bout de code
Code:
1
2
3
4
5
6
7 function ReadLen(fs : TStream) : dword; var c, d : byte; i : integer; begin fs.Read(c, 1); if (c and $80) = 0 then
Merci infinement
Version imprimable
bonjour,
je suis débutant en delphi et j'espère connaitre le rôle ce bout de code
Code:
1
2
3
4
5
6
7 function ReadLen(fs : TStream) : dword; var c, d : byte; i : integer; begin fs.Read(c, 1); if (c and $80) = 0 then
Merci infinement
Bonjour.
L'opérateur AND peut avoir deux utilité. Soit c'est le ET booléen, soit le ET binaire. Dans ton cas c'est la seconde utilité qui est utilisé. Le symbole $ est le marqueur de l'héxadécimal.
Donc ici on essaye soit de détecter que le bit de poids fort n'est pas présent dans l'octet lu, soit que la valeur entière dans l'octet n'est pas égal à 128.