C/C++

Зачем нужно писать int около main(), return 0, void main в c++?

Зачем нужно писать int около main() в c++?
А также return 0;

Также ещё видел что-то по типу void main. Что это значит?
Что-то не полностью пояснили выше, а мне лень было. Я вот такой старый, что помню, что в древнем си void был макроподстановкой int. По сути void - пусто, то бишь мол ничего не возвращает, но по факту return 0; — возврат нуля. Почему же нуля, если это типа FALSE как бы (как бы, так как были времена, что и bool типа не было), а потому, что если все хорошо, то достаточно этого, а вот когда плохо, то надо кучу разных значений иметь и хорошо подходит все остальное. Если сейчас все привыкли, что int 32 битный, то были времена когда он даже был не 16 битный, так что int может быть непредсказуемой длины, хоть в 10 бит, смотря какое железо будет.
Если же вы хотите знать как сейчас, то видно надо новые стандарты брать и читать там, какой в это сейчас вкладывают смысл.
Но всегда было так, что программа возвратить должна результат, который мы можем использовать еще где-то или передать другой программе.
Александр Лазаренко
Александр Лазаренко
51 376
Лучший ответ
int перед main() - по стандарту. Раньше (давно раньше) это было необязательным, тип int принимался по умолчанию. В версиях C++ от Borland и ее наследника Embarcadero можно было писать void main() как расширение стандарта.
return 0 необязателен, его можно не писать.
Чтобы были тупые вопросы по базе.
Грубо говоря, main - главная функция всей программы, и она возвращает целочисленный тип (int).

И чтобы понять, что программма завершилась корректно, мы возвращаем 0.
Это вот нестандарт:
 void main() 
Но где-то может и работать. В плюсах надо
 int main(void) 
Хотя это не обязательно. Это вот тоже совершенно необязательно:
 return 0; 
Потому что и так по умолчанию в систему вернётся ноль, если программа завершится удачно. А при бесконечных циклах типа
 #include 
int main()
{
int n;
for (;;)
{
std::cout > n;
std::cout
В с++ обязательное определение типов данных, вот зачем
Zaur Temrokov Чего? Это хоть и правда, но вообще никак не связано с написанием int main вместо void main