wierd results

Dima Volodin dvv@dvv.org
Fri Mar 17 13:48:00 GMT 2000


george josilo wrote:

> I seem to get wierd results when i do:
>
> main()
> {
> int a=0;
> printf("%d %d %d %d\n", a, ++a, ++a, a);
> }
>
> most other compilers (MS), SparcWorks,
> give: 2 2 1 0 (evaluation in reverse order)
>
> gcc(v2.7.2, v2.8.1)
>
> give 2 1 2 2
>
> am I missing something?

Yep. Your program is mailformed - you can change a variable in an
expression only once and you are trying to do that two times.

> ÐorÐe Josilo - mailto:josilo@lucent.com                 | ZAP   ''''

Dima



More information about the Gcc-bugs mailing list