Указатели или что тут происходит? - C (СИ)
Формулировка задачи:
Чем больше я пытаюсь разобраться, тем больше путаюсь. Пожалуйста, построчно объясните что тут происходит начиная с typedef
struct listNode { /* структура со ссылкой на себя */ char data; struct listNode *nextPtr; }; typedef struct listNode LISTNODE; typedef LISTNODE *LISTNODEPTR; void insert (LISTNODEPTR *, char); char dele(LISTNODEPTR *, char); int isEmpty(LISTNODEPTR); void printList(LISTNODEPTR); void instructions(void);
Решение задачи: «Указатели или что тут происходит?»
textual
Листинг программы
struct listNode { /* структура listNode */ char data; //данные struct listNode *nextPtr; // указатель на структуру типа listNode }; typedef struct listNode LISTNODE; /* создаем новый тип данных т.е. чтобы не писать каждый раз struct listNode test; а чтобы написать LISTNODE test; */ typedef LISTNODE *LISTNODEPTR; /* аналогично чтобы не писать LISTNODE * ptr; чтобы просто LISTNODEPTR ptr; как по мне - довольно неудобное решение. */ // прототипы функций void insert (LISTNODEPTR *, char); char dele(LISTNODEPTR *, char); int isEmpty(LISTNODEPTR); void printList(LISTNODEPTR); void instructions(void);
Объяснение кода листинга программы
- Структура
listNode
объявляет данные и указатель на следующую структуруlistNode
в списке. - Тип данных
LISTNODE
создается с помощью typedef для упрощения работы со структурой. - Тип данных
LISTNODEPTR
также создается с помощью typedef для упрощения работы с указателями на структуру. - Функция
insert
добавляет новый элемент в список. - Функция
dele
удаляет элемент из списка. - Функция
isEmpty
проверяет, пуст ли список. - Функция
printList
выводит содержимое списка. - Функция
instructions
выводит инструкции для пользователя. - Код, в котором эти функции используются, не представлен.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д