Неявное преобразование char в int

164
11 августа 2018, 13:50

У Шилдта в книге написано: "В C# отсутствует автоматическое преобразование символьных значений в целочисленные и обратно". Подскажите, пожалуйста, почему такой код выполняется: Console.WriteLine(3 + 'a'), а такой не работает: char x = 3 + 'a';?

Answer 1

Поздравляю, вы нашли ошибку у Шилдта.

На самом деле в C# отсутствует автоматическое преобразование целочисленных значений в символьные. А вот в обратную сторону все прекрасно преобразуется:

int x = 'a';
Console.WriteLine(x); // 97
READ ALSO
Запрос к таблице Linq. ASP.NET/C#

Запрос к таблице Linq. ASP.NET/C#

У меня такое заданиеВ момент регистрации пользователю добавляется роль

185
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable

192
Как вывести информацию SQL в DataGrid?

Как вывести информацию SQL в DataGrid?

Хотел попробовать написать программу по правилам паттерна MVVMФактически я никогда не работал с ним

179
Что происходит под капотом при создании файлового потока?

Что происходит под капотом при создании файлового потока?

Сейчас читаю вот эту статью Difference between Buffer & Stream in C# и хотел бы для себя сначала уяснить что правильно понимаю, что происходит под капотом...

180