As laserlight stated, sizeof does not evaluate its operand in this case. Meaning sizeof(x+y) will give the same result as sizeof(x*y*x*y*x*y) and sizeof(x).