ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Директива #define без параметровПродолжая знакомиться с директивами препроцессора, рассмотрим директиву #define, посредством которой обычно определяются константы. Как всегда, начнем с того, что приведем простой пример: #include <stdio.h> #define N 10 void main(void) { int i; for (i=0;i<N;i++) printf("\nПривет, мир!"); } Неужели нельзя было просто написать i<10? В этом примере, конечно, можно. Но представим себе другую ситуацию (пока именно представим, ибо соответствующие примеры имеются ниже). Пусть мы выполняем рисование на экране посредством некоторой "черепашки", которая передвигается с фиксированным шагом step (заданным в пикселях). Сколько раз встретится в такой программе значение шага? Уж наверняка не один раз. И не два, и не три... А если мы захотим изменить значение шага? Придется "лазить" по всей программе и искать соответствующие значения. А если мы снова захотим изменить это значение... Кроме того, с помощью #define обычно определяются "популярные" константы (пи, е и т.п.). Ведь даже если каждая такая константа в программе используется единожды (что маловероятно), написать #define PI 3.14159265358979323846 и использовать в самой программе имя PI гораздо удобнее, чем записывать числовое значение непосредственно в программе. Все "популярные" числовые константы и так уже определены в заголовочном файле math.h. Чтобы узнать их имена, можно посмотреть на содержимое файла. Число пи в нем определено константой М_Р1, число е? константой М_Е. Почему перед ними стоит префикс "М_"? Достоверно не знаем, наверное, потому, что они находятся в math.h. Не нашли, что искали? Воспользуйтесь поиском:
|