Прошел курс. Получил код 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. Приведение простых типов