Partager via


<<, opérateur (Référence C#)

Mise à jour : novembre 2007

L'opérateur de décalage vers la gauche (<<) décale le premier opérande vers la gauche du nombre de bits spécifié par le second opérande. Le type de la seconde opérande doit être un int.

Notes

Si le premier opérande est un int ou uint (quantité 32 bits), la valeur du décalage est donnée par les cinq bits de poids faible du second opérande.

Si le premier opérande est un long ou ulong (quantité 64 bits), la valeur du décalage est donnée par les six bits de poids faible du second opérande.

Les bits d'ordre haut du premier opérande sont ignorés et les bits vierges d'ordre bas sont initialisés à zéro. Les opérations de décalage ne causent jamais de dépassement de capacité.

Les types définis par l'utilisateur peuvent surcharger l'opérateur << (consultez opérateur) ; le type du premier opérande doit être un type défini par l'utilisateur et le type du second opérande doit être int. Lorsqu'un opérateur binaire est surchargé, l'opérateur d'assignation correspondant (s'il y en a un) est, lui aussi, implicitement surchargé.

Exemple

class MainClass11
{
    static void Main()
    {
        int i = 1;
        long lg = 1;
        Console.WriteLine("0x{0:x}", i << 1);
        Console.WriteLine("0x{0:x}", i << 33);
        Console.WriteLine("0x{0:x}", lg << 33);
    }
}
/*
Output:
0x2
0x2
0x200000000
*/

Commentaires

Notez que i<<1 et i<<33 fournissent le même résultat, car 1 et 33 possèdent les cinq mêmes bits d'ordre bas.

Voir aussi

Concepts

Guide de programmation C#

Référence

Opérateurs C#

Autres ressources

Référence C#