/* ECP: FILEname=fig5_5.c */ /* 1*/ #define PrintDebug( Expr, Type ) \ /* 2*/ printf( "(" #Expr "): %" Type##Conv "\n", ( Expr ) ) /* 3*/ #define intConv "d" /* 4*/ #define doubleConv "f" /* 5*/ main( void ) /* 6*/ { /* 7*/ int X = 5, Y = 7; /* 8*/ double A = 5.0, B = 7.0; /* 9*/ PrintDebug( X + Y, int ); /*10*/ PrintDebug( A + B, double ); /*11*/ return 0; /*12*/ }