(P. 14) Uma observação final antes de deixar a conversão de temperatura para sempre. É uma má prática para enterrar “números mágicos” como 300 e 20 em um programa; eles transmitem pouca informação para alguém que possa ter que ler o programa mais tarde, e eles são difíceis de mudar de forma sistemática. Uma maneira de lidar com os números mágicos é dar-lhes nomes significativos. Uma linha #define define um simbólico nome ou constante simbólica para ser uma série particular de caracteres
#define name replacement text
Posteriormente, qualquer ocorrência de nome (não entre citações e não parte de outro nome) será substituído pelo texto de substituição correspondente. O nome foi o mesmo como forma de um nome de uma variável: uma seqüência de letras e dígitos que começa com uma letra. O texto de substituição pode ser qualquer sequência de caracteres; não é limitado a números
#include #define LOWER 0 /* lower limit of table */ #define UPPER 300 /* upper limit */ #define STEP 20 /* step size */ /* print Fahrenheit-Celsius table */ main () { int fahr; for (fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP) printf("%3d %6.1f\n", fahr, (5.0/9.0)*(fahr-32)); }