Автор: klem4 11.08.2007 23:05
Не компилируя код, скажите какой результат будет выведен на экран.
#include <stdio.h>
#define max(a, b) (a > b ? a : b)
int main(void) {
int x = 2, y = 3;
printf("%d", max(++x, ++y));
return 0;
}
пояснения и ответ в тег [ spoiler ] [ /spoiler ]
Автор: Perfez 11.08.2007 23:25
Спойлер (Показать/Скрыть)
4
Автор: volvo 11.08.2007 23:27
Спойлер (Показать/Скрыть)
5 будет выведено, ибо приведенное выражение раскрывается в
printf("%d", (++x > ++y ? ++x : ++y));
Автор: hardcase 11.08.2007 23:35
Спойлер (Показать/Скрыть)
дважды приплюснув 3 получим 5