|
Прошел курс. Получил код Dreamspark. Ввожу код на сайте, пишет: Срок действия этого кода проверки уже истек. Проверьте, правильно ли введен код. У вас осталось две попытки. Вы также можете выбрать другой способ проверки или предоставить соответствующие документы, подтверждающие ваш академический статус.
Как активировать код? |
Типы данных C#
Управляющие последовательности
В строковых литералах применяются управляющие последовательности.
- \a - звуковой сигнал
- \b - возврат на одну позицию
- \f - прогон страницы
- \n - новая строка
- \r - возврат каретки
- \t - горизонтальная табуляция
- \v - вертикальная табуляция
- \0 - нуль-символ
- \' - одинарная кавычка
- \" - двойная кавычка
- \\ - обратный слэш
Буквальный строковый литерал
Строковый литерал можно сделать буквальным ( verbatim - дословный), если перед открывающей кавычкой поставить символ @. Содержимое строки не интерпретируется и может быть многострочным. Но если внутри строкового литерала используется символ ", то его нужно заэкранировать таким же символом. Управляющие символы в такой строке не действуют.
using System;
namespace Test
{
class Program
{
static void Main(string[] args)
{
// Настройка консоли
Console.Title = "Буквальный строковый литерал";
Console.ForegroundColor = ConsoleColor.White;
Console.CursorVisible = false;
// Буквальный строковый литерал
string str;// Локальная переменная не инициализируется
str =
@"Привет всем от \n
Иванова
Петрова
Сидорова
""Фантомаса""
\t...............
и от многих других";
Console.WriteLine(str);
Console.ReadLine();
}
}
}
Листинг
4.2.
Буквальный строковый литерал
Приведение типов литералов
С литералами можно обращаться как с переменными соответствующих типов (не забывая, что это константы), например, приводить литерал к другому типу или использовать методы типов, наследуемые от ValueType/Object. При приведении типа литерала к родственному типу переменной соблюдаются те же правила, что и при приведении типов переменных. Если тип переменной имеет количество байт для хранения ее значений, способный уместить максимальное значение литерала без потери данных, то его можно приводить неявно. В противном случае нужно указать оператор явного приведения типов.
using System;
namespace Test
{
class Program
{
static void Main()
{
// Настройка консоли
Console.Title = "Приведение простых типов";
Console.ForegroundColor = ConsoleColor.White;
double a = 11.1f;// Неявное приведение малого к большому
float b = (float)11.1d; // Явное приведение большого к малому
float c = (int)11;// Неявное приведение целого к вещественному
long d = (short)11; // Неявное приведение короткого к длинному
string str = "";// Локальная переменная
str += a.ToString() + "\t"
+ b.ToString() + "\t"
+ c.ToString() + "\t"
+ d.ToString() + Environment.NewLine
// Литералы - те же простые типы
// и имеют соответствующие методы
+ (11.1f).ToString() + "\t"
+ (11.1d).ToString() + "\t"
+ (11).ToString() + "\t"
+ ((short)11.1f).ToString();
Console.WriteLine(str);
Console.WriteLine("\nВведите вещественное число");
Console.Write("(дробная часть через запятую): ");
str = Console.ReadLine();
try
{
float f = Convert.ToSingle(str);// Преобразование к float
Console.WriteLine("Вы ввели число: {0}", f);
int x = (int)f;
float y = f - x;
Console.WriteLine("\nЦелая часть числа: {0}", x);
Console.WriteLine("Дробная часть числа: {0}", y);
}
catch
{
Console.WriteLine("Вы ввели не число");
}
Console.ReadLine();
}
}
}
Листинг
4.3.
Приведение простых типов

