Форум программистов, компьютерный форум CyberForum.ru

Выйти из нескольких функций - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибка при заполнении массива http://www.cyberforum.ru/cpp-beginners/thread1062147.html
Помогите пожалуйста решить проблему: Это программа для игры в крестики нолики. В первой функции void instruction() необходимо вывести массив и в задумке надо что бы массив заполнялся символами от 1-9 типом char, |1|2|3| |4|5|6| |7|8|9| но вместо этого, при запуске массив заполняется кучей цифр, и выдает что то типа: |23412344|23412344|23412344344 |23412344|23412344|23412344344
C++ Разработать функцию, позволяющую поменять местами две произвольные строки матрицы Имеется код: #include <iostream> #include <stdio.h> using namespace std; char **s = new char* , *t; int i, j, n; int main() { for(i=0; i<10; i++) http://www.cyberforum.ru/cpp-beginners/thread1062144.html
C++ Найти сумму всех положительных чисел и записать ее в начало файла
Создать текстовый файл, содержащий числовую информацию. Найти сумму всех положительных чисел и записать ее в начало файла. Дополнительных массивов и файлов не использовать
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка содер-жится в ней C++
Ввести две символьных строки. Выполнить поиск второй строки в первой и вывести номер позиции первой строки, с которой вторая строка содержится в ней. Новых строк не создавать. Строку до и после преобразования вывести на экран
C++ Транспонировать квадратную матрицу, используя только оператор for. Новой матрицы не создавать. Вывести исходную и транспониро-ванную матрицы http://www.cyberforum.ru/cpp-beginners/thread1062121.html
Транспонировать квадратную матрицу, используя только оператор for. Новой матрицы не создавать. Вывести исходную и транспониро-ванную матрицы. // z1.cpp: главный файл проекта. #include "stdafx.h" #include<iostream> #include <stdio.h> #include <conio.h> #include <math.h> #include <stdlib.h>
C++ Драйвер на с++ Есть просьба, кто может, скинте исходник драйвера клавы или мыши на с++. Заранее спасибо. подробнее

Показать сообщение отдельно
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
03.01.2014, 10:03     Выйти из нескольких функций
Необходимо при определенном условии выскочить из косвенной рекурсии. Конечно, можно сделать это монструозно, но, полагаю, есть возможность выйти изо всех эти функций безо всяких глобальных переменных и тучи if при каждом косвенном вызове на проверку этого глобального флага?
Исключения использовать нельзя.

Я бы сделал это через goto, но насколько это правильно? Разворачивает ли goto стэк? Мне кажется, что нет.. Но может я ошибаюсь?

Так бы это выглядело с goto:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void f1()
{
f2();
}
void f2()
{
if (..)
goto HERE;
f1();
}
int main()
{
f1();
HERE:
doSomethingElse();
}

Не по теме:

Пожалуйста, не надо кричать "использование goto = быдло код"..

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru