Указатели на функции

Последнее обновление: 07.01.2023
Упражнение 1

Даны следующие две функции:

void print_person(char* name, int age)
{
    printf("Name: %s \t Age: %d \n", name, age);
}
void print_product(char* title, int price)
{
    printf("Title: %s \t Price: %d \n", title, price);
}

Первая принимает и выводит на консоль имя и возвраст человека, вторая - название и цену товара.

Определите указатель на эти функции и через указатель вызовите эти функции, передавая им различные параметры.

Ответ
#include <stdio.h>

void print_person(char* name, int age)
{
    printf("Name: %s \t Age: %d \n", name, age);
}
void print_product(char* title, int price)
{
    printf("Title: %s \t Price: %d \n", title, price);
}
int main(void)
{
    // определяем указатель на функцию
    void (*printer)(char*, int);
    printer = print_person;
    printer("Tom", 38);

    printer = print_product;
    printer("Phone", 12999);
    return 0;
}
Дополнительные материалы
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850