seleccao
Messages postés12Date d'inscriptionsamedi 29 avril 2006StatutMembreDernière intervention30 avril 2006
-
30 avril 2006 à 15:18
seleccao
Messages postés12Date d'inscriptionsamedi 29 avril 2006StatutMembreDernière intervention30 avril 2006
-
30 avril 2006 à 18:40
Bonjours à tous
Pour mon application en c++ je travaille avec de l'hexadecimal et j'utilise un switch
switch(n1)
{
case '0000':
hexa1 = "0";break;
case '0001':
hexa1 = "1";break;
case '0010':
hexa1 = "2";break;
}
Pour 0000 et 0001 ya pas de problème il me trouve le "0" et le "1" par contre pour le 0010 j'ai une erreur et si je change cette valeur par 0001 je n'ai plus d'erreur
Q'est ce qui ne va pas svp ?
Merci d'avance
seleccao
Messages postés12Date d'inscriptionsamedi 29 avril 2006StatutMembreDernière intervention30 avril 2006 30 avril 2006 à 17:48
en faite ce ke j'essaye de faire c d'avoir une textBox avec par exemple 1100 et au momen de cliké sur le bouton il me converti cette valeur en hexadecimal donc j'essaye toute les solutions possible (en c++ ihm), et le problème c'est ke si j'utilise les switch j'en aurai trop a faire...
Vous n’avez pas trouvé la réponse que vous recherchez ?
int n1=Convert::ToInt32(hexa1);
int n2=Convert::ToInt32(hexa2);
//int a = 0010;
switch(n1)
{
case '0000':
hexa1 = "0";break;
case '0001':
hexa1 = "1";break;
case '0010':
hexa1 = "2";break;
case '0011':
hexa1 = "3";break;
case '0100':
hexa1 = "4";break;
case '0101':
hexa1 = "5";break;
case '0110':
hexa1 = "6";break;
case '0111':
hexa1 = "7";break;
case '1000':
hexa1 = "8";break;
case '1001':
hexa1 = "9";break;
case '1010':
hexa1 = "A";break;
case '1011':
hexa1 = "B";break;
case '1100':
hexa1 = "C";break;
case '1101':
hexa1 = "D";break;
case '1110':
hexa1 = "E";break;
case '1111':
hexa1 = "F";break;
default :
hexa1 = "ERREUR ";break;
}
switch(n2)
{
case 0000:
hexa2 = "0";break;
case 0001:
hexa2 = "1";break;
case 0010:
hexa2 = "2";break;
case 0011:
hexa2 = "3";break;
case 0100:
hexa2 = "4";break;
case 0101:
hexa2 = "5";break;
case 0110:
hexa2 = "6";break;
case 0111:
hexa2 = "7";break;
case 1000:
hexa2 = "8";break;
case 1001:
hexa2 = "9";break;
case 1010:
hexa2 = "A";break;
case 1011:
hexa2 = "B";break;
case 1100:
hexa2 = "C";break;
case 1101:
hexa2 = "D";break;
case 1110:
hexa2 = "E";break;
case 1111:
hexa2 = "F";break;
default :
hexa2 = "ERREUR";break;
}
hexBOX->Text = String::Concat(hexa1, hexa2);
Chaque bit est dans un textbox, je les ai concaténé par paquet de 4 afin davoir 1111 1111, un switch pour le 1er paquet et un switch pour le second, mais voila comme j'ai un programme qui utilise 16 octets il me faudrai trop de switch...
cs_laurent1024
Messages postés987Date d'inscriptionmardi 31 mai 2005StatutMembreDernière intervention30 août 201225 30 avril 2006 à 18:30
Utilise un tableau de string. Apres tu fait une boucle for, dans laquelle tu fais une conversion en int de la string suivi du switch (vu que le traitement est le meme dans tout les cas)