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 !!
}
}
Output
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