Вывод текста на экран
Разберем программу, которая выводит на экран фразу "
Hello, world!
".
#include <iostream>
using namespace std;
int main()
{
cout << "Hello, World!" << endl;
return 0;
}
Разберем программу по строчкам:
Директива #include <iostream>
- (от англ. input output stream – поток ввода и вывода) - стандартный библиотечный заголовочный файл для работы с потоками ввода-вывода (input-output streams). .
using namespace std;
- Импорт всего пространства имен std
. Это пространство имен содержит все имена из стандартной библиотеки языка C++.
Пространство имен – это декларативная область, в рамках которой определяются различные идентификаторы (имена типов, функций, переменных, и т. д.).
Пространство имен (namespace
) в C++ — это механизм, который позволяет группировать идентификаторы (такие как переменные, функции, классы) под определенным именем. Это помогает избежать конфликтов имен между различными частями программы и библиотеками.
Представьте, что пространство имен — это как папка на компьютере, в которой хранятся файлы определенного типа. Когда вы работаете с файлами, находящимися в разных папках, имена файлов могут совпадать, но благодаря тому, что они находятся в разных папках, они не пересекаются. Точно так же пространства имен позволяют изолировать идентификаторы от других частей программы.
Пространства имен помогают сделать код более чистым, упорядоченным и уменьшить вероятность конфликтов имён.
В области
std
описаны стандартные потоки ввода и вывода с именами
cin
и
cout
.
Для работы с
cout
используется оператор
<<
, который определен (перегружен) для работы с различными типами данных. Оператор
<<
позволяет направлять данные в стандарнтый поток вывода
cout
(обычно это консоль, то есть мы увидим информацию в специальном окне вывода на экране).
Например,
cout << "Hello, world!" << endl;
использует оператор
<<
для вывода строки "
Hello, world!
" в стандартный вывод (на экран).
Заканчивать вывод принято переходом на новую строку. Для этого используется манипулятор endl
, который добавляет в вывод символ новой строки и очищает буфер. Вместо endl
можно напрямую вывести символ перехода на новую строку ("\n"
).
Переход на новую строку позволит следующему выводу или системным сообщениям не "слепиться" с предыдущим выводом, что делает вывод более удобным для чтения.