[..] Convention de nommage et utilisation de valeur hexadécimale

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
jpascal
Niveau 5
Niveau 5
Messages : 148
Enregistré le : jeu. 16 oct. 2008 16:21
Status : Hors ligne

[..] Convention de nommage et utilisation de valeur hexadécimale

#1

Message par jpascal »

Bonjour,

On peut définir une variable avec une valeur hexadécimale.
$Var = 0x0A0B0C
On n'utilise pas de simple ou double quote comme pour une chaîne de caractères.
Faut-il donc utiliser le préfixe $sVar comme pour une "string" ou $dVar ou autre ?
Best Practices : https://www.autoitscript.com/wiki/Best_coding_practices

Je ne comprends pas comment passer de "0x0A0B0C" à 0x0A0B0C.
Local $sVar = '0x0A0B0C'
Local $dVar = 0x0A0B0C
ConsoleWrite(StringTrimLeft(Hex($dVar), 2) & ' = ' & StringTrimLeft($sVar, 2) & @CRLF)
;~ Passage de  "0x0A0B0C" à 0x0A0B0C ?
ConsoleWrite(Binary("0x0A0B0C") & ' <> ' & $dVar & @CRLF)
AutoIt 3.3.15.1 / 3.3.15.3 - SciTE 4.2.0 - Windows 10 x64
Avatar du membre
jchd
AutoIt MVPs (MVP)
AutoIt MVPs (MVP)
Messages : 2194
Enregistré le : lun. 30 mars 2009 22:57
Localisation : Sud-Ouest de la France (43.622788,-1.260864)
Status : Hors ligne

Re: [..] Convention de nommage et utilisation de valeur hexadécimale

#2

Message par jchd »

Une valeur hexa, comme 0x0A0B0C, est une simple représentation en base 16 d'un entier, donc sur 16 ou 32 bits.
"0x0A0B0C" est une chaîne ; Binary($sVar) est une valeur de type "binaire" et correspond à la représentation hexa telle qu'elle est stockée en mémoire.

Code : Tout sélectionner

Local $sVar = '0x0A0B0C'
Local $dVar = 0x0A0B0C

ConsoleWrite("$sVar :                   " & @TAB & $sVar & @TAB & VarGetType($sVar) & @LF)
ConsoleWrite("Binary($sVar) :           " & @TAB & Binary($sVar) & @TAB & VarGetType(Binary($sVar)) & @LF)
ConsoleWrite("Int(Binary($sVar)) :      " & @TAB & Int(Binary($sVar)) & @TAB & VarGetType(Int(Binary($sVar))) & @LF & @LF)
ConsoleWrite("$dVar :                   " & @TAB & $dVar & @TAB & VarGetType($dVar) & @LF)
ConsoleWrite("Binary($dVar) :           " & @TAB & Binary($dVar) & @TAB & VarGetType(Binary($dVar)) & @LF)
ConsoleWrite("Int(Binary('0x0C0B0A00')) :" & @TAB & Int(Binary('0x0C0B0A00')) & @TAB & VarGetType(Int(Binary('0x0C0B0A00'))) & @LF)
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Répondre