Mega Code Archive

 
Categories / C# Tutorial / Operator
 

Side-effects of short-circuit operators

using System;    class Example {       public static void Main() {         int i;      bool someCondition = false;        i = 0;        Console.WriteLine("i is still incremented even though the if statement fails.");      if(someCondition & (++i < 100))         Console.WriteLine("this won't be displayed");      Console.WriteLine("if statement executed: " + i); // displays 1        Console.WriteLine("i is not incremented because the short-circuit operator skips the increment.");     if(someCondition && (++i < 100))        Console.WriteLine("this won't be displayed");           Console.WriteLine("if statement executed: " + i); // still 1 !!    }     } i is still incremented even though the if statement fails. if statement executed: 1 i is not incremented because the short-circuit operator skips the increment. if statement executed: 1