Bonjour,

j'ai les variables suivantes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
unsigned char buf[2];
int val; // entier signé sur deux octets
Je voudrais copier la valeur qui est dans buff[] dans la variable val.
buff[0] contient l'octet de poids fort et buff[1] contient l'octet de poids faible.

Comment dois-je vais ma copie ?

comme ça ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
val =  buf[1];
val |=  ((int)buf[0]) << 8;
J'ai quelque doute sur le castage : si buf[0] = 0xFF, alors ((int)buf[0]), ça donne quoi ? 255 ou -127 ?

Quelles sont les règles pour le castage au niveau du signe ?