например пишу программу по взаимодействию с пользователем, использую разные функции которые возвращают значение или не возвращают, и через одну функцию вызываю другие и в итоге неожиданно обнаруживаю, что не знаю как вернуться обратно в мейн)) что в таких случаях делать и как не путаться в логике))
Чтобы вернуться в мейн нужно выйти последовательно из всех функций. А зачем такая необходимость возникла? Произошло что-то такое, что работать дальше нельзя? Для этого есть механизм исключений.
Нельзя вот так вот просто взять и вернуться в мейн. Можно использовать глобальную переменную статус возврата. После каждого вызова функции проверять ее и если истина то тоже ретерн... В многопоточном программировании свои приколы...