Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция_10_Строки.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
171.01 Кб
Скачать

Результаты выполнения программы

Введите число между 1 и 3, другое число - окончание: 1

Вы ввели 1, поэтому была вызвана func1

Введите число между 1 и 3, другое число - окончание: 2

Вы ввели 2, поэтому была вызвана func2

Введите число между 1 и 3, другое число - окончание: 3

Вы ввели 3, поэтому была вызвана func3

Введите число между 1 и 3, другое число - окончание: 10

Вы ввели 10 для окончания

В программе определены три функции — func1, func2, func3 - каждая из которых принимает целый аргумент и ничего не возвращает. Указатели на эти три функции хранятся в массиве f, который объявлен следующим образом:

void (*f[3])(int) = {func1, func2, func3};

Массив получает в качестве начальных значений имена 3-х функций. Когда пользователь вводит значения 1, 2 или 3, это значение (минус 1) используется в качестве индекса в массиве указателей на функции.

Вызов функции выполняется следующим образом:

(*f[choice-1])(choice);

В этом вызове (*f[choice-1]) определяет указатель, расположенный в элементе массива с индексом choice-1. Указатель разыменовывается, чтобы вызвать функцию, и choice передается функции как аргумент. Каждая функция печатает имя функции, чтобы показать, что вызов верен.

20

Программирование-2013. 1 курс. Лекция №10. Строки. Броницкая Н.А.