Форматирующая строка состоит из двух элементов: обычных печатных символов, предназначенных для вывода в исходном виде, а также спецификаторов формата.
Спецификаторы формата указываются в следующем виде:
{ argum, width:fmt}
argum - номер выводимого аргумента, начиная с нуля
width – минимальная ширина поля
fmt – формат
Параметры width и fmt являются необязательными
Способы применения данного метода:
Console::WriteLine(x);
//на экран выводится значение идентификатора х
Console::WriteLine("x=" + x +"y=" + y);
/* на экран выводится строка, образованная последовательным слиянием строки "x=", значения x, строки "у=" и значения у */
Console::WriteLine("x={0} y={1}", x, y);
/* на экран выводится строка, формат которой задан первым аргументом метода, при этом вместо параметра {0} выводится значение x, а вместо {1} – значение y*/
Пример 2_2. Использование метода WriteLine
#include "stdafx.h"
using namespace System;
int main()
{
int i = 3, j = 4;
Console::WriteLine("{0} {1}", i, j);
Console::ReadLine();
return 0;
}
Результат работы программы:
3 4
В приведенной программе при обращении к методу WriteLine через запятую перечисляются три аргумента: "{0} {1}", i, j. Первый аргумент определяет формат выходной строки. Следующие аргументы нумеруются с нуля, так переменная i имеет номер 0, j– номер 1. Значение переменной i будет помещено в выходную строку на место {0}, а значение переменной j – на место {1}. При обращении к методу WriteLine следующим образом Console.WriteLine("{0} {1} {2)", j, i, j), то на экран будет выведена строка: 4 3 4.
Последний вариант использования метода WriteLine является наиболее универсальным, потому что он позволяет не только выводить данные на экран, но и управлять форматом их вывода.
Пример 2_3. Использование управляющих последовательностей символов в методе WriteLine.
Значение идентификатора выравнивается по правому краю. Если выделенных позиций для размещения значения идентификатора окажется недостаточно, то автоматически добавится необходимое количество позиций.
Пример 2_5. Управление размещением вещественных данных
#include "stdafx.h"
using namespace System;
int main()
{
double x = 123.1234567;
Console::WriteLine("x={0:#.###}", x);
Console::WriteLine("x={0:.####}", x);
Console::ReadLine();
return 0;
}
Результат работы программы:
x=123,123
x=123,1235
В данном случае под целую часть числа отводится одна позиция, под дробную – три. Если выделенных позиций для размещения целой части значения идентификатора окажется недостаточно, то автоматически добавиться необходимое количество позиций.