Перейти к содержимому

Рекурсия в C: просто о сложном | Рекурсивные функции, базовый случай и стек вызовов

LearningLad

0:00 / 0:00

Рекурсия в C: просто о сложном | Рекурсивные функции, базовый случай и стек вызовов

387 просмотров · 3 нед. назад
LearningLad
295 тыс. подписчиков
387 просмотров · 3 нед. назад
Изучите рекурсию в программировании на C с помощью простого примера с обратным отсчетом и поймите, что происходит в памяти во время рекурсивных вызовов функций. В этом уроке мы сначала разберемся с рекурсией: когда функция вызывает саму себя напрямую или косвенно для решения задачи. Затем мы создадим функцию обратного отсчета, которая вызывает саму себя многократно с меньшим значением вместо использования цикла. Вы узнаете, почему каждое рекурсивное решение нуждается в условии, которое останавливает вызов самой функции. Используя пример с обратным отсчетом, мы добавим условие остановки и посмотрим, что может произойти, если рекурсивные вызовы продолжаются бесконечно, включая переполнение стека. Затем мы проследим за рекурсивными вызовами, используя начальное значение 3, и визуализируем, что происходит в стеке. Вы увидите, как для каждого вызова функции countdown() создается новый кадр стека и как эти кадры стека удаляются по мере возврата рекурсивных вызовов. К концу урока вы поймете основную идею рекурсии, рекурсивные вызовы функций, условие остановки, кадры стека и то, как рекурсивные вызовы возвращаются через стек вызовов. Наш сайт https://www.LearningLad.com Социальные сети Facebook   / learninglad   Twitter   / learningladedu   Instagram   / learningladofficial