Condividi tramite


Operatore >> (Riferimenti per C#)

Aggiornamento: novembre 2007

L'operatore di spostamento a destra (>>) sposta il primo operando verso destra in base al numero di bit specificati dal secondo operando.

Note

Se il primo operando è un tipo int o uint (quantità a 32 bit), il conteggio dello spostamento verrà dato dai cinque bit meno significativi del secondo operando (secondo operando & 0x1f).

Se il primo operando è un tipo long o ulong (quantità a 64 bit), il conteggio dello spostamento sarà dato dai sei bit meno significativi del secondo operando (secondo operando & 0x3f).

Se il primo operando è di tipo int o long, lo spostamento verso destra sarà uno spostamento aritmetico, ovvero i bit vuoti più significativi vengono impostati come il bit del segno. Se il primo operando è di tipo uint o ulong, lo spostamento verso destra sarà uno spostamento logico, ovvero i bit più significativi vengono riempiti di zeri.

I tipi definiti dall'utente possono sottoporre a overload l'operatore >>. Il tipo del primo operando deve essere un tipo definito dall'utente, mentre il tipo del secondo operando deve essere int. Per ulteriori informazioni, vedere operator. Quando si esegue l'overload di un operatore binario, viene eseguito in modo implicito anche l'overload dell'eventuale operatore di assegnazione corrispondente.

Esempio

class RightShift
{
    static void Main()
    {
        int i = -1000;
        Console.WriteLine(i >> 3);
    }
}
/*
Output:
-125
*/

Vedere anche

Concetti

Guida per programmatori C#

Riferimenti

Operatori di C#

Altre risorse

Riferimenti per C#