Confusion on interpretations

SUppose if We have

t = 128;
n = 3;

while ( n >= 4 && ((t = 7) & 0x80) == 0 )

why t is 128 after the loop. As we learnt that parentheses has highest priority.

Won’t in this case t be 7. why the value is still 128?

n >= 4 is false, so evaluation stops.

But parentheses should have highest priority ? even before n>= 4

I think you've rather misunderstood what "priority" means with respect
to evaluation of expressions. In any case, C and C++ don't define
priorities; they define a grammar for expressions, and rules for
evaluating them, which include short-circuit evaluation for && on
built-in types.

This really isn't a Clang question though, it's a "learning C and/or
C++" question, not topical for cfe-dev.

-- James

This is not a forum for teaching C++. Maybe try asking on stackoverflow?

Thought that clang is interpreting it wrong. Sorry for the noise