Стандартный ввод-вывод
Класс System::Console (Система::Консоль) обеспечивает поддержку стандартного ввода-вывода. Метод ReadLine класса System::Console (Система::Консоль) считывает введенную с клавиатуры строку как текстовую. С помощью методов Write (Запись) и WriteLine класса System::Console (Система::Консоль) на консоль выводится текстовая строка, и, говоря о методе WriteLine, также символ новой строки. Проще всего ввод с консоли выполняется путем считывания в объект String (Строка) с последующим преобразованием в необходимый тип данных. Чтобы выполнить это преобразование можно использовать методы ТоХхх класса System::Convert (Система::Преобразовать).
В следующем примере такой метод используется для ввода с консоли температуры в градусах Фаренгейта, преобразования текстовой строки в число, вычисления температуры в градусах Цельсия и вывода на консоль значений температуры в градусах Фаренгейта и Цельсия.
//ConvertTemp.срр fusing <mscorlib.dll> using namespace System; // использовать пространство имен Система; _gc class InputWrapper // класс сборщика мусора InputWrapper { public: int getlnt(String *pprompt) // Строка { Console::Write(pprompt); // Запись String *pbuf = Console::ReadLine(); // Строка return Convert::ToInt32(pbuf); // Преобразовать } double getDouble(String *pprompt) { Console::Write(pprompt); // Запись String *pbuf = Console::ReadLine(); // Строка return Convert::ToDouble(pbuf); // Преобразовать } Decimal getDecimal(String *pprompt) // Десятичное число { Console::Write(pprompt); // Запись String *pbuf = Console::ReadLine(); // Строка return Convert::ToDecimal(pbuf); // Преобразовать } String *getString(String *pprompt) // Строка { Console::Write(pprompt); // Запись String *pbuf = Console::ReadLine(); // Строка return pbuf; } }; void main(void) { InputWrapper *piw = new InputWrapper; int numTemp = piw › getlnt("How many temp's? "); // Сколько? for (int i = 0; i < numTemp; i++) { int fahr = piw › getlnt("Temp. (Fahrenheit): "); // Фаренгейт int Celsius = (fahr – 32) * 5 / 9; // Цельсия Console::WriteLine ( "Fahrenheit = {0}", fahr.ToString()); // Фаренгейт Console::WriteLine("Celsius = {0}", _box(Celsius)); // Цельсия } }