Operator C# Tutorial

The short-circuit AND operator is && and the short-circuit OR operator is ||.
As described earlier, their normal counterparts are & and |.
The normal operands will always evaluate each operand, but short-circuit versions will evaluate the second operand only when necessary.

using System; 
 
class Example {    
  public static void Main() {    
    int n, d; 
 
    n = 10; 
    d = 2; 
    if(d != 0 && (n % d) == 0) 
      Console.WriteLine(d + " is a factor of " + n); 
 
    d = 0; // now, set d to zero 
 
    Console.WriteLine("Since d is zero, the second operand is not evaluated."); 
    if(d != 0 && (n % d) == 0) 
      Console.WriteLine(d + " is a factor of " + n);  
     
    Console.WriteLine("try the same thing without short-circuit operator. This will cause a divide-by-zero error.");
    if(d != 0 & (n % d) == 0) 
       Console.WriteLine(d + " is a factor of " + n); 
  }    
}
2 is a factor of 10
Since d is zero, the second operand is not evaluated.
try the same thing without short-circuit operator. This will cause a divide-by-zero error.
Unhandled Exception: System.DivideByZeroException: Attempted to divide by zero.
at Example.Main()