Is this a right and effcient way of checking AND in a for loop Just saw this at work in a code review and was wondering if this style of coding - for loop, doing &amp;&amp; like that, seems fine to you or is there a better way of doing the same?

for (int j = 1; j &lt;= ETtop; j++)
{ 
    // Check everything.
    int k = ET[j].PriIdx;
    for (int z = 1; z &lt;= ET[k].ArgTop; z++ )
    {
        // Check to make sure every Argument in the equation is valid.
        // If it's a calc this is only true if it's been evaluated.
        ready = ready &amp;&amp; ET[k].Arg[z].Valid;
    }
}
Currently, once you get ready to be false, all other checks after that will fail (as false &amp;&amp; condition2 will always be false).  

Why not just break out of the inner for loop when ET[k].Arg[z].Valid is false?  If ready is needed, you may keep the assignment line, but break when it's false.