[Comm] [JT] C function parameters order

Damir Shayhutdinov =?iso-8859-1?q?damir_=CE=C1_tecon=2Eru?=
Чт Авг 18 12:59:38 MSD 2005


Vitaly Ostanin пишет:

>Здравствуйте.
>
>Тут прислали прикол:
>#include <stdio.h>
>void test(int a, int b, int c, int d)
>{
>printf("a=%d, b=%d, c=%d, d=%d\n", a ,b, c, d);
>}
>void main(void)
>{
>int c = 1;
>test(++c, ++c, ++c, ++c);
>test(c++, c++, c++, c++);
>printf("\nc=%d\n", c);
>}
>
>gcc-3.4.4 и борландовский turbo C 2.0.1 говорят:
>a=5, b=4, c=3, d=2
>a=8, b=7, c=6, d=5
>
>c=9
>
>А MS visual C 6.0 говорит:
>a=5, b=4, c=3, d=2
>a=5, b=5, c=5, d=5
>
>c=9
>
>Кто из них не прав?
>  
>
ЕМНИП, стандартом поведение не определено. Так что неправ только 
программист.


Подробная информация о списке рассылки community