Does this code lead to well-defined behavior? If no, then which rules / statements of C standard are violated? How exactly they are violated?
Code #1: