Permite una sustitución de texto parametreado por argumentos
#define simbolo(a1, a2, ...) cadena-caracteres
#define max(a,b) ( (a) ? (b) ? (a) : (b) )
Con esta definición la línea:
x = max(58,x*y);
es sustituida por:
x = ( (58) ? (x*y) ? 58 : (x*y) );
Si no se utilizan los par'entesis puede generarse algo incorrecto:
#define cuadrado(a) (a*a)
...
x = cuadrado(y+1);
es transformado en:
x=(y+1*y+1); es decir x =2*y+1
|
|
|