Символической(именованной) константой называют имя в тексте программы, которое должно быть заменено на конкретное постоянное значение до трансляции. Их применение позволяет сократить текст программы и сделать ее более ясной. Обычно это некоторые общеупотребительные константы, такие как: p, e и т.п., а также константы, которые могут измениться при модификации программы.
Пример.
PI=3.141593 TAB_SIZE=100
Стиль записи: принято записывать символические константы прописными буквами. В примере с вычислением квадратичной формы замена размера массивов, равного 4, на константу SIZE позволяет при модификации программы сделать изменение размера в одном месте.
Формат директивы определения символической константы:
#define <имя> <постоянное_выражение>
Пример.
#definePI 3.141593
#define EOF (-1)
#define PI2 (2*PI)
Значение константы желательно заключать в скобки, поскольку при подстановке возможны ошибки.
Пример.
а) #define E (5+10)
б) #define E 5+10
Подстановка 2*E в случае б) даст ошибку.
Некоторые определения.
Макроопределение – определение имени с помощью директивы #define.
Макроподстановка – замена имени в тексте программы на значение соответствующей константы.
Макровызов – появление имени символической константы в тексте.
Макросредства или макросы – средства, реализующие макроподстановки.
Пример.
#define SIZE 10
...............
float maxmatr(floata[ ][SIZE], int *k, int *l){
…………..
}