@lxr

Когда заврешается выполнение функции?

Добрый вечер. Интересует следующий вопрос: Если в самом конце функции я запускаю другую функцию, то первая ждёт её завершения? Или запустив функцию завершает свою работу?
void foo1(){
	// - тело подпрграммы foo1
	foo2();
}

void foo2(){
	// - тело подпрограммы foo2
	foo1();
}

int main(){
	foo1();
	
	return 0;
}


5d6d67546b4d9214474500.png

Например у меня есть функция menu() (текстовый интерфейс), и из неё я запускаю подменю, а потом, что бы вернуться в меню, я снова запускаю menu(). Это что в памяти запущенно 2 функции menu? или одна?
  • Вопрос задан
  • 95 просмотров
Решения вопроса 1
hePPer
@hePPer
вызов другой функции является так же часть функции. так что ваш код будет работать по нижнему варианту на схеме. Функция будет жать окончание работы вызванных ею других функций.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
myjcom
@myjcom
Когда заврешается выполнение функции?

В данном случае вы получите Переполнение стека
Стек вызовов
Вызов функции в си
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
от 1 000 до 1 800 usd.
PLANAR Челябинск
от 70 000 до 110 000 руб.
АКМЭ сервис Санкт-Петербург
от 130 000 руб.
17 сент. 2019, в 22:19
3000 руб./за проект
17 сент. 2019, в 20:46
952 руб./в час
17 сент. 2019, в 20:41
10000 руб./за проект