Кто нибудь, объясните мне нормально, ясно, на русском, зачем нужен return 0 в с++? - Вопросы по С+

Вопрос Кто нибудь, объясните мне нормально, ясно, на русском, зачем нужен return 0 в с++?

Регистрация
26 Окт 2013
Сообщения
94
Репутация
-5
Спасибо
0
Монет
0
Кто нибудь, объясните мне нормально, ясно, на русском, зачем нужен return 0 в с++?

Например здесь:

//два спортсмена (s1, s2). количество их баллов задается пользователем. тот у кого больше баллов, у того первое место, у кого меньше - второе. либо же ничья.

#include

using namespace std;

int main ()

{

int s1,s2;

cout<<"s1=";

cin>>s1;

cout<<"s2=";

cin>>s2;



if (s1>s2) { cout<< "I m. - s.1"<< endl<<"II m. - s.2"; }

if (s1<s2) { cout<< "I m. - s.2"<< endl<<"II m. - s.1";}

if (s1==s2) { cout<< "I m. - s.1, s.2";}



return 0;

}

Вот какую роль играет этот return 0??
 
Регистрация
30 Дек 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
Функция должна возвращать что-то к точке входа в процедуру. К примеру, вызываешь функцию Math.sin (x) - и на место вызова функции тебе вернут значение синуса. А тут возвращать нечего. Точка входа в процедуру - начало программы, и никому она ничего не возвращает, потому пишут return 0 - как закончишь, ничего в систему не возвращай. Правила языка обязывают.
 
Регистрация
23 Янв 2013
Сообщения
80
Репутация
0
Спасибо
0
Монет
0
в bat файле можно анализировать код завершения программы. 0 - успех, не 0 - ошибка. Это он и есть
 
Регистрация
8 Ноя 2013
Сообщения
90
Репутация
0
Спасибо
0
Монет
0
то что ты написал программу, это по сути не программа а метод или функция. и он преимущественно всегда требует от тебя вернуть результат работы. для чего тебе метод? чтобы он совершил какое то действие. а раз всё что тебе надо ты сделал в самой подпрограмме, то возвращать тебе ничего не нужно. но структура требует что то вернуть. этакий способ обозначить конец метода. и для этого служит return который возвращает 0 (ничего).
 
Регистрация
17 Ноя 2013
Сообщения
83
Репутация
0
Спасибо
0
Монет
0
В действительности, return в main можно не писать, т. к. main - это особый случай.

Но число, которое ты пишешь в этом return может быть получено и обработано: cmd-скриптом (Windows), sh-скриптом (Linux), планировщиком заданий, иной программой, которая запустила твою программу...

Так что когда ты пишешь return 0;, ты явно сообщаешь, что программа завершилась без ошибок.

Если же ты в этом return используешь число, отличное от 0, то сообщаешь, что в программе произошла ошибка и данное число является кодом этой ошибки.
 
Сверху Снизу