Это механизм неявного (автоматического) преобразования.
На самом деле символьный тип char в C# (.Net) является по размеру 2х-байтовым беззнаковым типом ushort. У каждого символа char есть своё соответствующее целочисленное значение, то есть код в таблице ASCII, и в C# существует автоматическое преобразование символов в целочисленные значения, поэтому в данном случае при использовании вместо int символа будет возвращён его код в ASCII.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
На самом деле символьный тип char в C# (.Net) является по размеру 2х-байтовым беззнаковым типом ushort. У каждого символа char есть своё соответствующее целочисленное значение, то есть код в таблице ASCII, и в C# существует автоматическое преобразование символов в целочисленные значения, поэтому в данном случае при использовании вместо int символа будет возвращён его код в ASCII.