C/C++

C++. Есть ли функция для завершения работы программы (аналог goto в самый конец программы)?

Нужно пропустить все, что идет от if до конца int main()
Р*
Роман *****
4 548
http://www.cplusplus.com/reference/cstdlib/exit/
Но это не аналог goto в конец main. exit сразу завершает процесс. А при переходе в конец main будут вызываться деструкторы объектов (если требуется).
Для выхода из main есть обычный оператор
return 0;
В main лучше использовать return, а не exit.
exit завершит программу в любом случае, даже если его вызвать не из main.

Ещё есть вариант: выбросить исключение (throw). Это в случае ошибки, для аварийного завершения программы.
Mec Avan
Mec Avan
58 065
Лучший ответ
Денис Шелудько как вариант return
exit(0)
ZA
Zaur Aliyev
80 598
В int main то же сделает return 0;
А числа могут быть только <, > или ==, проверка на что-то иное не имеет смысла.

#include "iostream"
#include "cmath"
using namespace std;
int main(){
int a,b; cout<<"a b: "; cin>>a>>b;
for(int i=fmin(a,b);i<=fmax(a,b);i++)cout<< i<<' ';}
Хушнид Шакаров
Хушнид Шакаров
74 546
Роман ***** На случай, если я введу буквы. Хотя реагирует на такой ввод программа криво. Если в первую переменную писать, то ошибку (else) видит, а если во вторую, то присваивает второй переменной ноль и продолжает выполнение. Спасибо за fmin и fmax, сильно сокращает код.
Хушнид Шакаров Тогда так:

int main(){
int a,b; cout<<"a b: "; if(cin>>a>>b)
for(int i=fmin(a,b);i<=fmax(a,b);i++)std::cout<< i<<' ';}
Хушнид Шакаров std:: тут не нужен, забыл выкинуть
Хушнид Шакаров min находится в "algorithm". а fmin - в "cmath". Я предпочитаю по возможности использовать более обычный header, особенно для начинающих :)
goto есть в с++.

в общем я супер гений и не так прочитал вопрос да и хрен с ним.

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

если тебе нужно пропустить это при каком то условии то
if или while.
if - это просто проверка условия, и выполнения кода 1 раз.
а while проверка условия и выполнения кода до всегда пока условие истино.
while (проверка условия) и
{
выполнения кода вложенного в скобки, до тех пор пока условие правильно.
}

аналог с проверкой получается do while
do (код работает от начала if до exit)
while проверяется условие, и если условие неверно то выходит из программы, а если условие верно то снова выполняет код в do.

while (x != 5) выполняется код do (код) пока x неравно 5.
или while (x == 5) выполняется код в do (код) пока x = 5.

аналог наверно циклы,
do while.
1) работает код
2) проверяется условие
do {// выполняем цикл.
i++;
sum += i;
} while (i < 1000); // пока выполняется условие.

1) проверяется условие.
2) работает код.
while (Условие) {
Тело цикла;
}

goto считается или пишут что считается плохим тоном, и гении программирования рекомендуют заменять циклами.

в общем говорят что goto можно заменить циклом любым наверно.

про goto.

Оператор goto часто используется в некоторых старых языках, таких как Basic или Fortran, или даже в языке Cи. Однако в C++ goto почти никогда не используется, поскольку любой код, написанный с ним, можно более эффективно переписать с использованием других объектов в языке C++, таких как циклы, обработчики исключений или деструкторы (всё перечисленное мы рассмотрим чуть позже).

дальше хочешь сам читай гугли или пересоздавай вопрос почему goto не нравится или не нужно использоваться.
Роман ***** Тоже читал, что плохой тон. Типа, уровень программиста обратнопропорционален количеству goto в его программах.