- •6 Глава 1
- •12 Глава 1
- •14 Глава 1
- •16 Глава 1
- •18 Глава 1
- •20 Глава 1
- •22 Глава 1
- •24 Глава 1
- •26 Глава 1
- •31 Глава 1
- •34 Глава 2
- •36 Глава 2
- •Puc. 2.4. Дополнительные опции консольного приложения Win32
- •38 Глава 2
- •40 Глава 2
- •42 Глава 2
- •44 Глава 2
- •48 Глава 2
- •50 Глава 2
- •52 Глава 2
- •54 Глава 2
- •56 Глава 2
- •58 Глава 2
- •60 Глава 2
- •62 Глава 2
- •64 Глава 2
- •66 Глава 2
- •68 Глава 2
- •70 Глава 2
- •74 Глава 2
- •76 Глава 2
- •79 Глава 2
- •82 Глава 2
- •84 Глава 2
- •86 Глава 2
- •88 Глава 2
- •92 Глава 2
- •94 Глава 2
- •96 Глава 2
- •98 Глава 2
- •103 Глава 2
- •105 Глава 2
- •107 Глава 2
- •110 Глава 2
- •115 Глава 3
- •119 Глава 3
- •121 Глава 3
- •123 Глава 3
- •125 Глава 3
- •129 Глава 3
- •131 Глава 3
- •133 Глава 3
- •139 Глава 3
- •141 Глава 3
- •143 Глава 3
- •145 Глава 3
- •148 Глава 3
- •150 Глава 3
- •155 Глава 3
- •165 Глава 4
- •168 Глава 4
- •170 Глава 4
- •173 Глава 4
- •175 Глава 4
- •178 Глава 4
- •184 Глава 4
- •186 Глава 4
- •188 Глава 4
- •190 Глава 4
- •192 Глава 4
- •194 Глава 4
- •198 Глава 4
- •201 Глава 5
- •203 Глава 5
- •205 Глава 5
- •207 Глава 5
- •213 Глава 5
- •217 Глава 5
- •219 Глава 5
- •221 Глава 5
- •223 Глава 5
- •225 Глава 5
- •227 Глава 5
- •232 Глава 5
- •234 Глава 5
- •236 Глава 5
105 Глава 2
Существуют и другие спецификаторы формата, которые позволяют вам предста- вить различные типы данных различными способами. Некоторые из наиболее часто используемых спецификаторов формата перечислены в табл. 2.10.
Ниже приведен демонстрационный пример вывода консольной программы CLR, вычисляющий цену коврового покрытия.
Вывод этой программы должен быть таким:
Данные,
переменные
и
вычисления
Описание полученных результатов
Размеры комнаты указаны в футах, в то время как цена коврового покрытия определяется площадью в квадратных ярдах, поэтому вы определяете константу f eetPerYard, чтобы использовать ее при пересчете футов в ярды. В выражении преобразования каждое измерение получается в результате деления значения типа double на int. Компилятор вставит код для преобразования типа int в double, преж- де чем выполнит умножение. После преобразования размеров комнаты в ярды выпол- няется вычисление цены коврового покрытия перемножением размеров в ярдах, что- бы получить площадь, и умножением этой площади на цену за квадратный ярд.
Операторы вывода используют спецификатор формата F2, чтобы ограничить вы- ходные значения двумя десятичными знаками после точки. Без этого в выводе мо- жет получиться больше знаков, что нежелательно, особенно когда речь идет о цене. Чтобы увидеть разницу, можете удалить спецификатор формата.
Обратите внимание, что оператор вывода площади использует арифметическое выражение во втором аргументе функции WriteLine (). Компилятор сначала вычис- лит это выражение, а затем передаст результат в виде аргумента функции. В общем случае вы всегда можете использовать выражение в качестве аргумента функции — до тех пор, пока тип полученного результата согласуется с типом параметра функции.
Клавиатурный ввод в C++/CU
Возможности ввода с клавиатуры, которые имеются у консольных программ .NET Framework, несколько ограничены. Вы можете прочесть полную строку ввода как тек- стовую строку, используя для этого функцию Console: :ReadLine (), или же вы мо- жете прочесть отдельный символ, применяя для этого функцию Console: :Read (). Можно также прочесть нажатие клавиши функцией Console:: ReadKey (). Функцияиспользуется следующим образом:
Это читает полную входную строку текста, завершенную нажатием клавиши <Enter>. Переменная line имеет типи хранит ссылку на строку, которая
получается в результате выполнения функции. Маленький
символ, который следует за именем типа String, указывает, что это — дескриптор (handle), который ссылается на объект типа String. О типе String и дескрипторах объектов String вы узнаете в главе 4.
Оператор, читающий один символ с клавиатуры, выглядит следующим образом:
С помощью функции Read () вы можете читать входные данные символ за симво- лом, и затем анализировать прочитанные символы и преобразовывать их в соответ- ствующие числовые значения.
Функция <возвращает нажатую клавишу в виде объекта класса
ConsoleKeylnf о, который представляет собой класс типа значения, определенный в пространстве имен System. Вот оператор чтения нажатой клавиши: