Для программистов и опытных пользователей




Скачать 4.44 Mb.
Название Для программистов и опытных пользователей
страница 3/32
Дата публикации 20.09.2014
Размер 4.44 Mb.
Тип Документы
literature-edu.ru > Авто-обзор > Документы
1   2   3   4   5   6   7   8   9   ...   32

Пространства

Когда вы включаете в программу заголовок нового стиля, содержание этого заголовка оказывается в пространстве имен std. Пространство имен (namespace) — это просто некая объявляемая область, необходимая для то­го, чтобы избежать конфликтов имен идентификаторов, библиотечных функций и других подобных в глобальном пространстве имен (как, например, в С). Однако содержание заголовков нового стиля помещается в пространстве имен std. Позднее мы рассмотрим пространства имен более подробно. Сейчас же, чтобы простран­ство имен std стало видимым, просто используйте следующую инструкцию:

using namespace std;

инструкция помещает std в глобальное пространство имен. После того компилятор обработает эту инструкцию, вы сможете работать с заголов-как старого, так и нового стиля.

Если вы работаете со старым компилятором

Как уже упоминалось, заголовки нового стиля и пространства имен лись в C++ совсем недавно, поэтому эти черты языка могут не под ваться старыми компиляторами. Если у вас один из таких компиляторов, то при попытке компиляции первых двух строк кода, приводимых в книге примеров программ, вы получите одно или несколько сообщений об ошиб­ках. Обойти эту проблему просто — удалите инструкцию namespace и- ис­пользуйте заголовки старого стиля. То есть замените, например, инструкции

#include

using namespace std;

на инструкцию

^include

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

И еще одно замечание. Еще в течение нескольких лет вы будете встречать программы, в которых заголовки будут оформлены в старом стиле и не бу­дет инструкций namespace. Ваш компилятор C++ будет прекрасно справ-с такими программами. Тем не менее, что касается новых программ, следует использовать современный стиль, поскольку именно он опреде-стандартом языка Standard C++. Хотя программы прежнего стиля будут еще многие годы, технически они
обзор C++ 19

Упражнения

Перед тем как продолжить, попытайтесь откомпилировать п выше пример простейшей программы. Хотя эта программа не выполняет ни­каких действий, попытка ее компиляции поможет определить, поддерживает ли ваш компилятор современный синтаксис C++. Если он не принимает заголовки нового стиля и инструкцию namespace, замените их, как только что было описано. Запомните, если ваш компилятор не принимает код но­вого стиля, вам придется сделать изменения в каждой программе этой книги.

1.3. Консольный ввод и вывод в C++

Поскольку C++ — это улучшенный С, все элементы языка С также и в C++. Это подразумевает, что все программы, написанные на С, по умолчанию являются также и программами на C++. (На самом деле име­ется несколько очень незначительных исключений из этого правила, кото­рые будут рассмотрены позже.) Поэтому можно писать программы на C++, которые будут выглядеть точно так же, как и программы на С. Ошибки не будет, это только будет означать, что вы не смогли использовать все пре­имущества C++. Чтобы по достоинству оценить СН необходимо писать программы в стиле C++.

Вероятно, наиболее своеобразной чертой языка C++, используемой про­граммистами, является подход к вводу и выводу. Хотя такие функции, как printfQ и scanfQ, по-прежнему доступны, C++ обеспечивает иной, лучший способ выполнения этих операций. В C++ ввод/вывод выполняется с ис­пользованием операторов, а не функций ввода/вывода. Оператор это «, а оператор ввода — ». Как вы знаете, в С эти операторы соответственно, операторами левого и правого сдвига. В C++ они сохраня­ют свое первоначальное значение (левый и правый сдвиг), выполняя при этом еще ввод и вывод. Рассмотрим следующую инструкцию C++:

cout « "Эта строка выводится на экран. \п";

Эта инструкция осуществляет вывод строки в заранее определенный поток cout, который автоматически связывается с терминалом, когда программа C++ начинает выполняться. Это напоминает действие функции stdout в языке С. Как и в С, терминал для ввода/вывода в C++ может быть переоп-но пока будем считать, что используется экран.

С помощью оператора вывода « '■ можно вывести данные любого базового

типа C++. Например, следующая инструкция осуществляет вывод

100.99:

cout « 100.99;

20С

C++


В общем случае, д обычная форма оператора

cout «

на экран терминала используется следующая

Здесь выражение может быть любым действительным выражением C++, [ другие выражения вывода.

считывания значения с клавиатуры, используйте оператор ввода ». Например, в этом фрагменте целая величина вводится в num:

int num; cin » num;

Обратите внимание, что переменной num не предшествует амперсанд &. Как вы знаете, при вводе с использованием функции scanfQ языка С ей должны адреса переменных. Только тогда они смогут получить значе-,вводимые пользователем. В случае использования оператора ввода C++ все происходит иначе. (Смысл этого станет ясен после того, как вы больше узнаете о C++.)

В общем случае для ввода значения с клавиатуры, используйте следующую форму оператора »:

cin » переменная;




Расширенное толкование символов « и » операторов.

примером перегрузки

правильного использования операторов ввода/вывода в C++ вы должны включить в программу заголовочный файл iostream.h. Он является одним из заголовочных файлов C++ и поставляется с компилятором.





еры







1. В этой программе выводится строка, вающей точкой двойной точности:

^include using namespace std;

int main О

целых числа и одно число с пла-

int i, j; double d;

7. Краткий обзор C++ 2 1

i = 10;










j = 20;

■ 99.101;










cout « "Вот несколько чис cout « i;

cout « ' '; cout « j ; cout « ' ';

ел: ";







cout « d;










return 0;























представлен результат работы программы: Вот несколько чисел: 10 20 99.101



Если вы работаете с устаревшим компилятором, ему могут оказаться недос­тупными заголовки нового стиля и инструкции namespace, используемые в этой и во всех остальных программах книги. Если это так, замените соответ-инструкции описанным в предыдущем разделе способом.

2. В одном выражении ввода/вывода можно выводить более одной

Например, версия программы, описанной в примере 1, показывает один из эффективных способов программирования инструкций ввода/вывода,

^include using namespace std;

int main ()

{

int i, j; double d;

i = 10; j = 20; d = 99.101;

cout « "Вот несколько чисел: "; cout « i « ' ' « j « ' ' « d;

return 0;

22 _ Самоучитель C++

Здесь в строке

cout « i «''« j «''« d;

выводится несколько элементов данных в одном выражении. В общем случае вы можете использовать единственную инструкцию для вывода любого тре­буемого количества элементов данных. Если это кажется неудобным, просто запомните, что оператор вывода « ведет себя так же, как и любой другой оператор C++, и может быть частью произвольно длинного выражения.

Обратите внимание, что по мере необходимости следует включать в про­грамму пробелы между элементами данных. Если пробелов не будет, то дан­ные, выводимые на экран, будет неудобно читать.

3. Это программа предлагает пользователю ввести целое число:

#include using namespace std;

int main О

{

int i ;

cout « "Введите число : сап » i;

cout « "Вот ваше число: с i « "\n"

return 0;

Результат работы программы:

Введите число: 100 Вот ваше число: 100

Как видите, введенное пользователем значение действительно оказывается в L

4. Следующая программа — это программа ввода целого, числа с

точкой и строки символов. В ней для ввода всего перечисленного использу-инструкция.

^include using namespace std;

int main (}

{

int i;

float f; char s[80] ;

cout « ' "Введите целое, число с плавающей точкой и строку: cin » i » f » s;

1. Краткий обзор C++ 23_

cout « "Вот ваши данные: ";

cout « i « ' ' « f « ' ' « s;

return 0 ;

Как видно из этого примера, можно ввести в одной инструкции ввода столь­ко элементов данных, сколько нужно. Как и в С, различные элементы дан­ных при вводе должны быть отделены друг от друга (пробелами, табуляция­ми или символами новой строки).

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

10 100.12 Это проверка

то на экран 10 100.12 Это

Так происходит потому, что считывание строки прекращается при пробела после слова Это. Остаток строки остается в буфере ввода, в нии следующей операции ввода. (Это похоже на ввод строки с использова-scanfQ в формате %s.)

5. По умолчанию при использовании оператора » буферизуется весь

строки. Это означает, что до тех пор, пока вы не нажмете клавишу , информация не будет передана в вашу программу. (В языке С scanf() также буферизует ввод строки, поэтому такой стиль ввода не быть для вас чем-то новым.) Для исследования построчно-буферизованного ввода рассмотрим следующую программу:

ttinclude using namespace std;

int main()

{

char ch;

cout « "Вводите символы, для окончания ввода введите х. \п";

do {

cout « ":";

сin» ch; } while (ch ! = 'x') ;

return 0;

Когда вы протестируете эту программу, то убедитесь, что

очередного символа необходимо нажимать клавишу .

24 Самоучитель C++










  1. Напишите программу для ввода количества отработанных персоналом часов
    и размера почасовой оплаты каждого. Затем выведите суммарную зарплату
    персонала. (Удостоверьтесь в правильности ввода.)

  2. Напишите программу для преобразования футов в дюймы. Организуйте ввод
    числа футов и вывод на экран соответствующего числа дюймов. Повторяйте эту
    процедуру до тех пор, пока пользователь не введет 0 в качестве числа футов.

  3. Ниже приведена программа на языке С. Перепишите ее в соответствии со
    стилем ввода/вывода C++.

/* Преобразуйте эту программу на С в соответствии со

программирования C++. Эта программа подсчитывает наименьшее общее кратное

V

finclude

int main(void) I

int a, b, d, min;

printf ("Введите два scanf("%d%d", sa, sb); min = a > b ? b: a ; for (d=2; d

if -0) ) break;

if (d==mi ) {

Нет общего кратного\п"); return 0 ; }

меньшее общее кратное равно d)

return 0;

}
1.4. Комментарии в C++

В C++ комментарии в программу можно включать двумя различными спо­собами. Первый способ — это использование стандартного механизма, та­кого же, как в С, т. е. комментарий начинается с /* и оканчивается */• Как и в С, в C++ этот тип комментария не может быть вложенным.

Вторым способом, которым вы можете писать комментарии в программах C++, является однострочный комментарий. Однострочный комментарий на­чинается с символов // и заканчивается концом строки. Другого символа, помимо физического конца строки (такого, как возврат каретки/перевод строки), в однострочном комментарии не используется.

1. Краткий обзор C++£ 5_

Обычно программисты C++ используют стиль С для многострочных ком­ментариев, а для коротких замечаний используют однострочные коммента­рии в соответствии со стилем C++.



1. Программа, в которой есть стили комментариев как С, так и C++:

Этот комментарий в стиле С ! . Данная программа определ четность целого

*/
1   2   3   4   5   6   7   8   9   ...   32

Похожие:

Для программистов и опытных пользователей icon П равила пользования услугами информационно-библиотечного центра
Правила пользования услугами информационно-библиотечного центра – документ, фиксирующий взаимоотношения пользователя с информационно-библиотечным...
Для программистов и опытных пользователей icon Ханк Рейнвотер Как пасти котов. Наставление для программистов, руководящих...
Посвящается Дэвиду, моему любимому сыну, память о тебе меня неизменно вдохновляет
Для программистов и опытных пользователей icon Дипломная работа
Степень удовлетворенности пользователей в документах по музыкальному искусству 25
Для программистов и опытных пользователей icon Задача учителя-методиста в современной школе научить созданию новых...
Созданы педагогические папки-копилки таких учителей как Ухмусултанова А. С., Нурмагомедова Н. Д., Яшувова А. М., Карамурзаева Б....
Для программистов и опытных пользователей icon Форм массовой работы
Традиционные и инновационные, серьезные и игровые формы массового формирования информационной культуры пользователей
Для программистов и опытных пользователей icon «Поддержка дистанционных олимпиад: новые идеи и технологии»
В данных тезисах рассматривается вопрос быстрого и удобного создания сайтов олимпиад с помощью типового сайта поддержки олимпиад,...
Для программистов и опытных пользователей icon Флот в первой половине XIX века Император Павел I и военно-морские силы
Поэтому флот России, пользовавшийся в конце XVIII века заслуженной славой и состоявший из опытных и смелых моряков, вместе с тем...
Для программистов и опытных пользователей icon Приказ №50/3 от 30. 08. 2013г. Анализ работы библиотеки мкоу «Трусовская...
В библиотеке образовательного учреждения художественной литературы насчитывается 3703 экземпляра, учебной 1588, электронных изданий...
Для программистов и опытных пользователей icon Реферат Дипломный проект посвящен модернизации локальной сети организации «Надежный Контакт»
Проанализирован список задач решаемых с помощью локальной сети; также были изучены аппаратные и программные средства, необходимые...
Для программистов и опытных пользователей icon Курсовая работа студента 342 группы Матвеева Н. Н. «Реализация отмены/повтора...
Средств разработчиков и проектировщиков по можно отдельно выделить так называемые case-средства (case computer-Aided Software Engineering)....
Литература


При копировании материала укажите ссылку © 2015
контакты
literature-edu.ru
Поиск на сайте

Главная страница  Литература  Доклады  Рефераты  Курсовая работа  Лекции