Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2

Почему return не прерывает выполнение функции?

29.04.2017, 15:14. Показов 3907. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здрава!

Чет я тут запутался слегонца. Есть функция:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
a = 1;
b = 0;
 
int pro() {
    if (a == 1){
        if (b == 1) {
            HackPentagon();
        }
    return 0;
    }
    
    if (b == 0) {
        CallFBI();
    }
 
    return 0;
}
По идее, функция должна завершиться ещё на стадии попытки взлома Пентагона, тогда вызвалась функция return 0;

Но когда я посморел в отладчике выяснилось, что функция там не завершилась, а программа начала обрабатывать
C++
1
if (b == 0) {}
Почему?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.04.2017, 15:14
Ответы с готовыми решениями:

Return не прерывает функцию
Добрый день! Имеется некоторая функция, при получении переменной $find_alt значения true, я ожидаю, что функция прервется и вернет значение...

Почему пробел прерывает считывание строки
хочу всю строку преобразовать из строчных букв в заглавные, но когда я ввожу строку с пробелом, то строка не считывается. void...

Почему рекурсия прерывает работу программу при больших числах?
Добрый вечер. Подскажите пожалуйста, почему рекурсия прерывает работу программу, если например m я ввожу свыше 4500. Это выражение в...

19
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
29.04.2017, 15:47
del
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 15:52
Цитата Сообщение от mkostoevr Посмотреть сообщение
Но когда я посморел в отладчике
И какие значения показывал отладчик в a и b? Глобальные переменные?
0
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
29.04.2017, 15:52
del
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 15:57  [ТС]
nd2, значения не менялись, исключения не вызывались, ретурн тупо игнорировался. Или лн просто не так работает?

Добавлено через 1 минуту
daslex, по определённым причинам я элсы не использую. Там большая прога, долго объяснять.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 15:59
Цитата Сообщение от mkostoevr Посмотреть сообщение
значения не менялись
Точка останова в 5-й строке, какие там значения a и b ? Надеюсь, в Debug делаешь?
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 16:00  [ТС]
nd2, a=1, b=0
0
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
29.04.2017, 16:01
Цитата Сообщение от mkostoevr Посмотреть сообщение
ретурн тупо игнорировался
Такого не бывает
Убедитесь что значения соответствующие
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 16:02  [ТС]
h3mbr0, хорошо, проверю ещё раз, когда до компа доберусь.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 16:02
Цитата Сообщение от nd2 Посмотреть сообщение
Надеюсь, в Debug делаешь?
???
0
17 / 17 / 4
Регистрация: 10.05.2015
Сообщений: 60
29.04.2017, 16:05
Варианта 2:
1. всё таки где то а стало не равным 1 (тут явно не вся программа показана).
2. отладчик тупит и чего то не то показывает (такое бывает - проблемы это отладчика или код оптимизирован, или файлы с символьной информацией не соответствуют сборке или ...)

Как проверить - добавить printf перед звонком в FBI. Распечатать а и б.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 16:48
Цитата Сообщение от nd2 Посмотреть сообщение
Точка останова в 5-й строке, какие там значения a и b ?
Цитата Сообщение от mkostoevr Посмотреть сообщение
nd2, a=1, b=0
Цитата Сообщение от mkostoevr Посмотреть сообщение
проверю ещё раз, когда до компа доберусь.
Это как всё совмещается? Компа нет, но точка останова есть? И значения там видны? Фантазии на тему?
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 22:10  [ТС]
nd2, нет, я просто временно пересел на телефон.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 23:30
Цитата Сообщение от mkostoevr Посмотреть сообщение
нет, я просто временно пересел на телефон.
На телефоне IDE стоит?
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 23:31  [ТС]
nd2, пересел не програмиировать, просто пересел.

Кстати, проблему я решил, тему можно закрывать.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 23:36
Цитата Сообщение от mkostoevr Посмотреть сообщение
пересел не програмиировать, просто пересел.
Это понятно, но ты так отвечал в теме, как будто бы за компом сидел, с запущенным в IDE кодом.
Цитата Сообщение от mkostoevr Посмотреть сообщение
Кстати, проблему я решил, тему можно закрывать.
Всем было бы интересно узнать: в чём была причина.
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 23:39  [ТС]
nd2, я там с уловиями и переменными немного накосячил, долго рассказывать.
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 23:41
Цитата Сообщение от mkostoevr Посмотреть сообщение
я там с уловиями и переменными немного накосячил,
То есть, я был прав? То, что было в этой теме, было:
Цитата Сообщение от nd2 Посмотреть сообщение
Фантазии на тему?
0
Незнайка
26 / 11 / 2
Регистрация: 14.10.2016
Сообщений: 373
Записей в блоге: 2
29.04.2017, 23:46  [ТС]
nd2, не понял. В каком смысле?

Проблема была реальная, просто я не корректно привёл код в примере.

Слишком упростил
0
nd2
3438 / 2817 / 1249
Регистрация: 29.01.2016
Сообщений: 9,427
29.04.2017, 23:51
Цитата Сообщение от mkostoevr Посмотреть сообщение
В каком смысле?
Вот в этом:
Цитата Сообщение от mkostoevr Посмотреть сообщение
просто я не корректно привёл код в примере.
Слишком упростил
Фантазии - это то, что не имеет отношения к реальности.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.04.2017, 23:51
Помогаю со студенческими работами здесь

Как происходит передача значения после return 0 и почему после return ставится 0
#include <stdio.h> int power(int m, int n); /* тест функции power */ main() { int i; for (i = 0: i < 10, ++i) ...

exit(); и return; не останавливают выполнение
Здравствуйте. Вот такая проблема. if (isset($_POST)){ switch($_POST){ case 'cmd1': print_page1(); exit()(или...

Нужно ли выполнение запроса в методе возвращать по return?
Какая разница? Если нужно просто только выполнить запрос. function a() return запрос function a() запрос

Ставлю задержку на выполнение действий в цикле - задержка ставится почему то на выполнение всего скрипта
Здравствуйте! Код элементарный: $s = $_POST; $s = preg_replace('/ {2,}/',' ',$s); for ($i = 0; $i < strlen($s);...

Почему не срабатывает return?
всем привет. подскажите почему метод не завершается по return? public void depthFirstSearch(int rootVertex) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru