It seems sizeof is not a real function?
for example, if you write like this:
int i=0; printf(\"%d\\n\", sizeof(++i)); printf(\"%d\\n\", i); >
int i=0; printf(\"%d\\n\", sizeof(++i)); printf(\"%d\\n\", i);
sizeof() returns the size in bytes of whatever you pass as an argument to it. In a 32-bit architecture sizeof(int) would return 4, while sizeof(char) would return 1.