/**************************************************************** * * Purpose: To demonstrate macros * Author: M.J. Leslie * Date: 17-Oct-94 * ****************************************************************/ #define SQUARE(x) ( (x)*(x) ) main() { int value=3; printf("%d \n", SQUARE(value)); } /**************************************************************** * * answer will be 9 * ****************************************************************/ ------------------------------------------------- // Another common macro to compute the absolute value. #define absolute_value( x ) ( ((x) < 0) ? -(x) : (x) ) // and here is a sample useage... int x = -1; while( absolute_value( x ) ) { // ... } ------------------------------------------------- //a general purpose incrementing "for" loop #define count_up( v, low, high ) \ for( (v) = (low); (v) <= (high); (v)++ ) //prints out the integers 1 through 20: int i; count_up( i, 1, 20 ) { printf( "i is %d\n", i ); }