2010-10-23 12 views

Répondre

5
byte b = -66; 
int i = b & 0xff; 
+0

qui a fonctionné. J'accepterai cette réponse dès que je pourrai vous remercier. – William

+0

peut-être une explication: cela fonctionne parce que le littéral '0xff' est un int, pas un octet. Sinon, le bit ET avec '0xff' retournerait le même octet. –

+0

yup. La même chose fonctionne pour traiter w/shorts, il suffit de faire un '& 0xffff'. –

1
byte b = -66; 
    int i = b < 0 ? b + 256 : b; 

Il peut être utile de déclarer la fonction d'assistance pour cela.