Décalage à droite et entier signé

Sur mon compilateur, le pseudo-code suivant (les valeurs remplacé par binaire):

sint32 word = (10000000 00000000 00000000 00000000);
word >>= 16;

produit un word avec un champ de bits qui ressemble à ceci:

(11111111 11111111 10000000 00000000)

Ma question est, puis-je compter sur ce comportement pour toutes les plates-formes et les compilateurs C++?

OriginalL'auteur Anne Quinn | 2011-09-22