Литмир - Электронная Библиотека
A
A

2.2. Классическая первая программа

Приведем вариант классической первой программы. Она выводит на экран сообщение.

// Эта программа выводит на экран сообщение "Hello, World!"

#include "std_lib_facilities.h"

int main() // Программы на C++ начинаются с выполнения функции main

{

  cout << "Hello, World!\n"; // вывод "Hello, World!"

  return 0;

}

Этот набор команд, которые должен выполнить компьютер, напоминает кулинарный рецепт или инструкции по сборке новой игрушки. Посмотрим, что делает каждая из строк программы, начиная с самого начала:

cout << "Hello, World!\n"; // вывод "Hello, World!"

 

Программирование. Принципы и практика использования C++ Исправленное издание - _001.png
 Именно эта строка выводит сообщение на экран. Она печатает символы
Hello, World!
, за которыми следует символ перехода на новую строку; иначе говоря, после вывода символов
Hello,World!
курсор будет установлен на начало новой строки. Курсор — это небольшой мерцающий символ или строка, показывающая, где будет выведен следующий символ.

В языке С++ строковые литералы выделяются двойными кавычками (

"
); т.е.
"Hello, Word!\n"
— это строка символов. Символ
\n
— это специальный символ, означающий переход на новую строку. Имя
cout
относится к стандартному потоку вывода. Символы, “выведенные в поток
cout
” с помощью оператора вывода
<<
, будут отображены на экране. Имя
cout
произносится как “see-out”, но является аббревиатурой “haracter put stream” (“поток вывода символов”). Аббревиатуры довольно широко распространены в программировании. Естественно, аббревиатура на первых порах может показаться неудобной для запоминания, но привыкнув, вы уже не сможете от них отказаться, так как они позволяют создавать короткие и управляемые программы.

Конец строки

// вывод "Hello, World!"

является комментарием. Все, что написано после символа

//
(т.е. после двойной косой черты (
/
), которая называется слэшем), считается комментарием. Он игнорируется компилятором и предназначен для программистов, которые будут читать программу. В данном случае мы использовали комментарии для того, чтобы сообщить вам, что именно означает первая часть этой строки.

Комментарии описывают предназначение программы и содержат полезную информацию для людей, которую невозможно выразить в коде. Скорее всего, человеком, который извлечет пользу из ваших комментариев, окажетесь вы сами, когда вернетесь к своей программе на следующей неделе или на следующий год, забыв, для чего вы ее писали. Итак, старайтесь хорошо документировать свои программы. В разделе 7.6.4 мы обсудим, как писать хорошие комментарии.

 

Программирование. Принципы и практика использования C++ Исправленное издание - _001.png
 Программа пишется для двух аудиторий. Естественно, мы пишем программы для компьютеров, которые будут их выполнять. Однако мы долгие годы проводим за чтением и модификацией кода. Таким образом, второй аудиторией для программ являются другие программисты. Поэтому создание программ можно считать формой общения между людьми. Действительно, целесообразно главными читателями своей программы считать людей: если они с трудом понимают, что вы написали, то вряд ли программа когда-нибудь станет правильной. Следовательно, нельзя забывать, что код предназначен для чтения — необходимо делать все, чтобы программа легко читалась. В любом случае комментарии нужны лишь людям, компьютеры игнорируют комментарии.

Первая строка программы — это типичный комментарий, которая сообщает читателям, что будет делать программа.

// Эта программа выводит на экран сообщение "Hello, World!"

Эти комментарии полезны, так как по коду можно понять, что делает программа, но нельзя выяснить, чего мы на самом деле хотели. Кроме того, в комментариях мы можем намного лаконичнее объяснить цель программы, чем в самом коде (как правило, более подробном). Часто такие комментарии размещаются в первых строках программы. Помимо всего прочего, они напоминают, что мы пытаемся сделать.

Строка

#include "std_lib_facilities.h"

представляет собой директиву

#include
. Она заставляет компьютер “включить” возможности, описанные в файле
std_lib_facilities.h
. Этот файл упрощает использование возможностей, предусмотренных во всех реализациях языках С++ (стандартной библиотеке языка С++).

По мере продвижения вперед мы объясним эти возможности более подробно. Они написаны на стандартном языке С++, но содержат детали, в которые сейчас не стоит углубляться, отложив их изучение до следующих глав. Важность файла

std_lib_facilities.h
для данной программы заключается в том, что с его помощью мы получаем доступ к стандартным средствам ввода-вывода языка С++. Здесь мы просто используем стандартный поток вывода
cout
и оператор вывода
<<
. Файл, включаемый в программу с помощью директивы
#include
, обычно имеет расширение
.h
и называется заголовком (header), или заголовочным файлом (header file). Заголовок содержит определения терминов, таких как
cout
, которые мы используем в нашей программе.

Как компьютер находит точку, с которой начинается выполнение программы? Он просматривает функцию с именем

main
и начинает выполнять ее инструкции. Вот как выглядит функция
main
нашей программы “Hello, World!”:

int main() // Программы на C++ начинаются с выполнения функции main

{

  cout << "Hello, World!\n"; // вывод "Hello, World!"

  return 0;

}

Для того чтобы определить отправную точку выполнения, каждая программа на языке С++ должна содержать функцию с именем

main
. Эта функция по существу представляет собой именованную последовательность инструкций, которую компьютер выполняет в порядке перечисления. Эта функция состоит из четырех частей.

27
{"b":"847443","o":1}