Condividi tramite


Operatore & (Riferimenti per C#)

L'operatore & può essere utilizzato come operatore unario o binario.

Note

L'operatore unario & restituisce l'indirizzo dell'operando e richiede un contesto unsafe.

Gli operatori binari & sono già definiti per i tipi integrali e bool.Per i tipi integrali, l'operatore & calcola l'operatore AND logico bit per bit degli operandi.Per gli operandi bool, l'operatore & calcola l'operatore AND logico degli operandi. Il risultato sarà quindi true se e solo se entrambi gli operandi sono true.

L'operatore & valuta entrambi gli operatori indipendentemente dal valore del primo.Ad esempio:

int i = 0;
if (false & ++i == 1)
{
    // i is incremented, but the conditional
    // expression evaluates to false, so
    // this block does not execute.
}

I tipi definiti dall'utente possono eseguire l'overload dell'operatore & binario. Vedere operator.Le operazioni sui tipi integrali sono generalmente consentite sull'enumerazione.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 BitwiseAnd
{
    static void Main()
    {
        // The following two statements perform logical ANDs.
        Console.WriteLine(true & false); 
        Console.WriteLine(true & true);  

        // The following line performs a bitwise AND of F8 (1111 1000) and
        // 3F (0011 1111).
        //    1111 1000
        //    0011 1111
        //    ---------
        //    0011 1000 or 38
        Console.WriteLine("0x{0:x}", 0xf8 & 0x3f); 
    }
}
// Output:
// False
// True
// 0x38

Vedere anche

Riferimenti

Operatori [C#]

Concetti

Guida per programmatori C#

Altre risorse

Riferimenti per C#