Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
C# / C#Лаб1 / ЛабРабота2.doc
Скачиваний:
35
Добавлен:
31.05.2015
Размер:
1.66 Mб
Скачать

Литеральные константы

Константы C# могут появляться в виде литералов и именованных констант. Например:

y = 7.7f;

Значение константы "7.7f" является одновременно ее именем, оно же позволяет однозначно определить тип константы. В примере добавляется суффикс - специальный символ для точного указания типа. Примеры литеральных констант:

bool sw1=true, sw2=false; //нельзя присвоить 0 или 1

byte myByte=23;

sbyte mySByte=-5;

short myShort=34;

ushort myUShort=234;

int myInt=-453;

uint myUint=10u; // u или U

long myLong=1523L; // l можно спутать с 1

ulong myUlong1=564ul,

myUlong2=435Lu; // в любом порядке

decimal myDec=123.4m; // или М

float myFloat=234.5f; // или F

double myDoub1=34.56,

myDoub2=45.32d; // или D

char myChar='a'; // или Esc-последовательность

string myString1="Проба\nПера", // обычная строка

myString2=@"На

нескольких

строках"; // дословная строка, удобная для записи пути

Таблица 2

Esc-последовательность

Выводимый символ

Код символа в Unicode

\’

Одиночная кавычка

\x0027

\”

Двойная кавычка

\x0022

\\

Обратный слэш

\x005C

\0

Null

\x0000

\a

Тревога (звуковой сигнал)

\x0007

\b

backspace

\x0008

\f

Начать новую страницу

\x000C

\n

Новая строка

\x000A

\r

Возврат каретки

\x000D

\t

Горизонтальная табуляция

\x0009

\v

Вертикальная табуляция

\x000B

\u

Символ Unicode

\xNNNN

В объявлении константы добавляется модификатор const, инициализация констант обязательна и не может быть отложена.

Инициализирующее выражение может быть сложным, важно, чтобы оно могло быть вычислено в момент его определения.

public void Constants()

{

const int smallSize = 38, largeSize =58;

const int midSize = (smallSize + largeSize)/2;

const double pi = 3.141593;

largeSize = 60; //Ошибка!!!!!!!!! Значение константы нельзя изменить.

Console.WriteLine("midSize= {0}; pi={1}", midSize, pi);

}

Рассмотрим пример, демонстрирующий спецификаторы формата при выводе на консоль.

static void Main(string[] args)

{

string myStr=@"Вывод

с различными параметрами форматирования

переменной float=1054.4567f";

Console.WriteLine(myStr);

float myFloat=1054.4567f;

Console.Write("Нет "); // можно и без перехода на новую строку

Console.WriteLine(myFloat);

Console.WriteLine("c {0:c}",myFloat);

// денежный формат

Console.WriteLine("C1 {0:C1}",myFloat);

// -«- с 1 цифрой после запятой

Console.WriteLine("n1 {0:n1}",myFloat);

// 1 цифра после запятой

Console.WriteLine("N6 {0:N6}",myFloat);

// 6 цифр после запятой

Console.WriteLine("f {0:f}",myFloat);

// формат с фиксированной точкой

Console.WriteLine("F3 {0:F3}",myFloat);

//фиксир. точка и 3 цифры после запятой

Console.WriteLine("G {0:G}",myFloat);

Console.WriteLine("g {0:g}",myFloat);

// наиболее подходящий формат: f или e

Console.WriteLine("e10 {0:e10}",myFloat);

//формат с плав. точ. и 10 цифр после зап.

Console.WriteLine("E3 {0:E3}",myFloat);

// формат с плав. точ. и 3 цифры после зап.

Console.ReadLine(); //ждем нажатия Enter

}

Рис. 8. Спецификаторы формата

static void Main(string[] args)

{

string myStr=@"Вывод

целого числа 1235

в 16-ричной системе счисления";

Console.WriteLine(myStr);

Console.WriteLine("X {0:X}", 1235);

Console.WriteLine("x4 {0:x4}", 1235);

}

Рис. 9. Спецификаторы формата системы счисления

Спецификатор формата задается следующим образом:

{N [,M [:<КодыФорматирования>]]}

N задает номер объекта, заменяющего формат, задается обязательно. Номер начинается с нуля. M задает минимальную ширину поля вывода.

Соседние файлы в папке C#Лаб1