Salut !

J'ai besoin de convertir une chaîne en entier signé 8 bits. Cette valeur peut être saisie et/ou affichée en base 2, 10 ou 16.

Ma valeur est vérifiée à chaque fois qu'elle est modifiée. Voici comment je vérifie ma valeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
try
{
   parameter[i].PValue = (SByte*)Convert.ToSByte(InputString, SelectedBase);
   parameter[i].ValueIsValid = true;
}
catch { parameter[i].ValueIsValid = false; }
Cette vérification est bonne si je suis en base 10, par contre elle échoue si je suis en base 2 ou 16.

La même chose pour un entier signé 16 bits fonctionne parfaitement quelque soit la base...

Je ne comprends pas ce qui ne va pas, est-ce à cause du SByte ?

++