"if (a() && b != null)" will "a()" always be evaluated?
<p>I have such code:</p>

<pre><code>if (a() &amp;&amp; b != null) {
    b.doSomething();
}
</code></pre>

<p>I need side effect of <code>a()</code> even if <code>b</code> is <code>null</code>. Is it guaranteed by C#? Or C# may omit <code>a()</code> call if <code>b</code> is <code>null</code>?</p>
