Что происходит после того, как компьютер заканчивает выполнение инструкций, заданных в вашей программе? Программа завершается, и компьютер возвращается в исходное состояние, то есть если программа выполнялась из операционной системы MS-DOS, на дисплее вновь появится ее подсказка, если же программа выполнялась из среды Windows, то вы вновь возвратитесь в ее оболочку.
Возврат в исходную среду, как правило, осуществляется автоматически. Исключение составляют отдельные компиляторы языка Си, которые требуют, чтобы вы явно указывали каждый шаг, включая возврат в систему. Для таких компиляторов вводится инструкция return(0), которую помещают непосредственно перед фигурной скобкой, завершающей тело функции main():
main() { puts("У меня все в порядке"); puts("А у тебя?"); return(0); } Инструкция return(0) указывает компьютеру, что необходимо вернуться назад в исходную среду. При работе с большинством компиляторов включение подобной инструкции в текст программы не является обязательным, вы не получите сообщения об ошибке, даже если она отсутствует. Использование символа 0 также не является обязательным. Большинство компиляторов позволяет вместо записи return(0); использовать сокращенную запись return; без скобок. Однако если вы поставили скобки, то должны использовать полную запись, во избежание ошибки компилятора.
Если вы все-таки используете инструкцию return(0), не помещайте никаких инструкций между ней и фигурной скобкой, завершающей программу. Например, ошибкой было бы написать:
main() { puts("У меня все в порядке"); return(0); puts("А у тебя?"); } так как в этом случае компьютер вернется в операционную систему после выполнения первой функции puts(), вы так и не дождетесь появления строки "Ау тебя?".