Функция как член структуры - C (СИ) (69874)
Формулировка задачи:
Здравствуйте! Столкнулся с проблемой: не могу объявить функцию как член структуры. Компилятор ошибок не выдаёт, но при запуске программа крашится. Подскажите, в чём ошибка (код ниже).
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- struct base
- {
- void (*enter)(void);
- };
- void enter(void)
- {
- int x;
- scanf("%d", &x);
- }
- int main()
- {
- struct base a;
- a.enter();
- return 0;
- }
Решение задачи: «Функция как член структуры»
textual
Листинг программы
- a.enter = enter;
Объяснение кода листинга программы
- В данном коде происходит объявление и инициализация переменной
a
типа struct с полямиenter
иsome_value
. - Значение поля
enter
устанавливается равным функцииenter
. - Значение поля
some_value
не указывается и остается неопределенным.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д