Что напечатает следующая программа?
#include <stdio.h> #define FIDGE(k) k+3.14159 #define PR(a) printf("a = %d\t",(int)(a)) #define PRINT(a) PR(a); putchar('\n') #define PRINT2(a,b) PR(a); PRINT(b) #define PRINT3(a,b,c) PR(a); PRINT2(b,c) #define MAX(a,b) (a<b ? b : a)
main() { { int x=2; PRINT( x*FIDGE(2) ); (Препроцессор 1.1)
} { int cel; for( cel=0; cel<=100; cel+=50 ) PRINT2( cel, 9./5*cel+32 ); (Препроцессор 1.2)
} { int x=1, y=2; PRINT3( MAX(x++,y),x,y ); PRINT3( MAX(x++,y),x,y ); (Препроцессор 1.3)
} }