Chaine de caractere Hexa en binaire
Bonjour,
je cherche à transformer ma chaine hexadecimal (par exemple : "ABCD1234") en binaire.
J'ai ecrit cette fonction qui n'est absolument pas optimisée et j'aimerais savoir s'il y'avait une meilleur solution ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| string hex2bin(string hex)
{
string binaire = "";
for(int i=0; i<hex.length(); i++)
{
switch (hex[i])
{
case '0':
binaire += "0000";
break;
case '1':
binaire += "0001";
break;
case '2':
binaire += "0010";
break;
case '3':
binaire += "0011";
break;
case '4':
binaire += "0100";
break;
case '5':
binaire += "0101";
break;
case '6':
binaire += "0110";
break;
case '7':
binaire += "0111";
break;
case '8':
binaire += "1000";
break;
case '9':
binaire += "1001";
break;
case 'A':
binaire += "1010";
break;
case 'B':
binaire += "1011";
break;
case 'C':
binaire += "1100";
break;
case 'D':
binaire += "1101";
break;
case 'E':
binaire += "1110";
break;
case 'F':
binaire += "1111";
break;
}
}
return binaire;
} |
Merci de votre réponse