![](/user_photo/2706_HbeT2.jpg)
lec18
.pdf![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C861x1.jpg)
Макроподстановки средствами препроцессора.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C862x1.jpg)
Макроподстановки средствами препроцессора.
Примеры.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C863x1.jpg)
Макроподстановки средствами препроцессора.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C864x1.jpg)
Макроподстановки средствами препроцессора. Моделирование многомерных массивов.
Общие принципы представления массивов в языке С.
1.Основным понятием языка С является одномерный массив, а возможности формирования многомерных массивов (особенно с переменными размерами ограничены.)
2.Нумерация элементов массивов в языке С начинается с нуля. Применение макросов для организации доступа к элементам массива позволяет обойти оба указанных затруднения за счет переобозначения индексированных элементов.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C865x1.jpg)
Макроподстановки средствами препроцессора. Моделирование многомерных массивов.
Пример программы.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C866x1.jpg)
Макроподстановки средствами препроцессора. Моделирование многомерных массивов.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C867x1.jpg)
Макроподстановки средствами препроцессора. Моделирование многомерных массивов.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C868x1.jpg)
Имитация матрицы с помощью макроопределения и одномерного массива.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C869x1.jpg)
Имитация матрицы с помощью макроопределения и одномерного массива.
![](/html/2706/188/html_y2UaDAuCWk.EINY/htmlconvd-sg97C870x1.jpg)
Отличия макросов от функций.
Iв отличии от функции, определение которой присутствует в одном экземпляре, тексты, формируемые макросом вставляются в программу столько раз, сколько используется макрос;