— I know that it's an if statement but what does it evaluates to?
The comma operator returns the last operand. It's been used for a lot of (doubtful) things. It even led to some library implementors to think about it's overloading (yes, you can overload the comma operator)
— Was this for me?
— I tried to explain it earlier
So (2,1,0) returns zero i=0 returns zero if(0) evaluates as false And you got Hello from that branch