increasing var twice in a statement

Willi Mann willi@wm1.at
Fri Jun 15 14:37:00 GMT 2007


Hi!

Can anybody tell me what output the following program snippet should
produce according to C standard:

int main(void) {
	int a;
	int b;
	b = 3;
	a = ++b + ++b;
	printf("%d\n",a);
	return 0;
}

I would have expected 9, but gcc 4.1.2 produced a binary that wrote 10.

Willi

Please CC: me in replys, I'm not on the list.



More information about the Gcc-help mailing list