В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
1 | |
Возврат из функции int main() в С++18.08.2010, 09:25. Показов 6479. Ответов 35
Метки нет (Все метки)
Судя по всему тема довольно холиварная. Вот хотел спросить как вы предпочитаете действовать. Относится естественно только к С++.
Пишите ли вы в конце main() return 0, что имхо правильнее. Или полагаетесь на то, что система в случае успешного завершения в любом случае вернет 0?
0
|
18.08.2010, 09:25 | |
Ответы с готовыми решениями:
35
В чем разница между int main(){} и int main(void){}? Расчёт значений двумерного массива и их возврат в main() с однократным вызовом функции В каком случае надо начинать с int main() или с int _tmain( int argc, _TCHAR* argv[] ) и т.д.? Назначение аргументов функции int main |
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
18.08.2010, 09:40 [ТС] | 3 |
oxotnik, Нет. Все в пределах цензуры. По дефолту в большинстве компиляторов возвращает 0. Проверьте. Важен сам вопрос, много ли людей возвращает и как все же правильнее
0
|
Maniac
|
|||||||||||||||||||||
18.08.2010, 09:44 | 4 | ||||||||||||||||||||
oxotnik, Не выдаст..
Для этого кода
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
18.08.2010, 09:52 [ТС] | 5 |
ISergey, Но как предпочитаете действовать вы?
0
|
Заблокирован
|
||||||
18.08.2010, 09:57 | 6 | |||||
а разве нельзя обьявить
или сейчас так не пишут
0
|
Maniac
|
|
18.08.2010, 10:05 | 8 |
Dzhej-Dzhej, Нельзя. Ошибку получите..
http://codepad.org/xBXLiCql Добавлено через 1 минуту Lavroff, Лично мне особого труда не составляет в конце дописать return 0;
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
18.08.2010, 10:23 [ТС] | 9 |
ISergey, Кстати void main() на многих компилях глотает. На VS даже без ворнинга. Хотя это не правильно
0
|
192 / 190 / 15
Регистрация: 27.01.2009
Сообщений: 548
|
||||||
18.08.2010, 10:53 | 10 | |||||
коллега пишет даже
0
|
16 / 16 / 2
Регистрация: 31.07.2009
Сообщений: 54
|
||||||
18.08.2010, 11:26 | 11 | |||||
Ну как показал ISergey,
0
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
|
18.08.2010, 11:51 | 12 |
1. Стандарт (3.6.1) предусматривает только две сигнатуры функции main - int main() и int main(int argc, char** argv).
2. Тот же самый раздел Стандарта устанавливает, что, если поток выполнения достигает конца функции main без предложения return, это эквивалентно return 0;
1
|
4342 / 1474 / 680
Регистрация: 12.03.2009
Сообщений: 5,310
|
|
18.08.2010, 11:57 | 13 |
Lavroff, есть такая неофициальная вещь (а может даже вполне и официальная) как правила хорошего кода на C++, т. е. как грамотно писАть и оформлять код (отступы, пробелы, комментарии и так далее).
И среди этих правил есть одно про рекомендуемое написание return 0 в конце main(). По мне лучше эти правила соблюдать, чтобы код был читабельным для любого Надо нарабатывать такие привычки
2
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
18.08.2010, 12:01 [ТС] | 14 |
k1ry4, Сегодня просто с человеком на форуме был спор. Вот и решил спросить, чтобы узнать что думают люди и как используют по этому поводу
0
|
4342 / 1474 / 680
Регистрация: 12.03.2009
Сообщений: 5,310
|
|||||||||||
18.08.2010, 12:11 | 15 | ||||||||||
Lavroff, просто с точки зрения компилятора код:
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
18.08.2010, 12:13 | 16 |
А я вообще за то, чтобы С-программы завершать функцией exit(). Вот в С++, правда, лучше этого не делать. Не так давно обсуждалось уже, почему...
0
|
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
|
|
18.08.2010, 12:45 | 17 |
сюда еще входит именование переменных, функций, классов, методов.. и во многих компаниях - эти правила разные так что это не закон.. скорее, образец к подражанию. важно не то, чтоб твой стиль был копией кого-то, важно чтоб твой стиль был читабелен и ты придерживался его на протяжении всего кода.
Что касается int main() - я return 0 пишу. Никогда не знаешь, как поведет себя компилятор без него, а с ним - все будет в порядке.
0
|
yanyk1n
|
18.08.2010, 12:49
#18
|
Не по теме: Monte-Cristo, в любом случае я пытался донести информацию, которую ты мне поведал:friends:
0
|
155 / 102 / 12
Регистрация: 22.07.2010
Сообщений: 445
|
|
18.08.2010, 13:31 | 19 |
Лично я всегда пишу в C++ с return 0; (привычка из C).
Не по теме: Хотел выложить страницу из книги "Философия C++", но там написано, что Никакая часть книги не может быть воспроизведена в какой бы то нибыло форме без письменого разрешения владельцев авторских прав.
0
|
yanyk1n
|
18.08.2010, 13:33
Возврат из функции int main() в С++
#20
|
Не по теме: Mencey, раз сказано нельзя, значит нельзя.
0
|
18.08.2010, 13:33 | |
int main() или int main(void)? int main() и int _tmain(int argc, _TCHAR* argv[]) Почему у функции main() тип возвращаемого значения - int? Main.cpp: In function ‘int main()’: main.cpp:10:1: error: ‘then’ was not declared in this scope Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |