Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csPmNuSf 41 of 436 menu
◀ ▶

Суффиксы числовых литералов в C#

Сразу после цифр можно поставить букву. Ее называют суффиксом. Буква задает тип самого числа. Например, буква L задает long:

long num = 100L; Console.WriteLine(num);

Буква U или u задает беззнаковое целое, например uint:

uint num = 50U; Console.WriteLine(num);

Буквы U и L можно поставить вместе. Получается ulong. Порядок букв любой: UL или LU:

ulong num = 100UL; Console.WriteLine(num);

Буква f или F задает float. Дробный литерал без f имеет тип double, и в float его так не запишешь:

float num = 3.14f; Console.WriteLine(num);

Буква m или M задает decimal. Для decimal суффикс обязателен, если тип не выведен из контекста:

decimal num = 10.5m; Console.WriteLine(num);

Буква d явно помечает double, но для double она не обязательна:

double num = 3.14d; Console.WriteLine(num);

Суффикс у литерала можно не писать, если слева уже указан тип переменной и число в него помещается:

long num = 100; Console.WriteLine(num);

Без буквы целое имеет тип int, если оно в него входит:

int num = 50; Console.WriteLine(num);

Если целое в int не входит, компилятор выбирает более широкий тип литерала - uint или long. Число 3000000000 без буквы имеет тип uint, а для long нужен суффикс L:

long num = 3000000000L; Console.WriteLine(num);

Дробь без буквы имеет тип double:

double num = 3.14; Console.WriteLine(num);

Дан следующий код:

long num1 = 10000000000; uint num2 = 50; float num3 = 2.5; Console.WriteLine(num1); Console.WriteLine(num2); Console.WriteLine(num3);

Скажите, соберется ли этот код без суффиксов.

Какой тип у числа 50, если буквы после него нет?

Какой тип у числа 3.14, если буквы после него нет?

Нужен ли суффикс f у числа 2.5, если его записывают в переменную типа float?

Какой тип у записи 50U?

Какой тип у записи 3.14f?

Какой тип у записи 100L?

Какой тип у записи 100UL?

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить