Функция как член структуры - 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
не указывается и остается неопределенным.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д