Как сохранить и представить значение типа int как char (C#) - PullRequest
1 голос
/ 08 апреля 2020

Я не уверен, что название хорошо объяснено. Я имею в виду, что это делается:

int i = 3;
char id = (char)i:
Console.Writeline(i);
Console.Writeline(id);

, а затем получается вывод в консоли:

3

3

Но (очевидно) я получить вывод:

enter image description here

Я хотел бы иметь возможность хранить в качестве символа то же значение переменной int, а не связанный код символа.

Ответы [ 3 ]

3 голосов
/ 08 апреля 2020

Предполагая, что вы имеете в виду целое число в диапазоне от 0 до 9, затем смещаете значение на код символа для нулевого символа в ASCII - который равен 48, но нет необходимости знать, что здесь - просто используйте сам символ:

int i = 3;
char id = (char)('0' + i);

Если вы имеете в виду любое целое число: ToString() ваш друг (не существует char, который может отображать значение 42 или -3 например, так как им нужно несколько символов).

2 голосов
/ 08 апреля 2020

i.ToString() - это то, что вы ищете.

(char)i преобразует значение, используя таблицы ASCII, 3 означает ETX - конец TeXt и, следовательно, показывает вам странный символ.

0 голосов
/ 08 апреля 2020

Вы можете сначала преобразовать значение int в строку. Если вам все еще нужно это как char, вы можете просто поместить строковое значение в переменную char, преобразовав ее. Это будет выглядеть так:

int number = 3;
 string convertedNumber = Convert.ToString(number);
 char getChar = Convert.ToChar(convertedNumber);
 Console.WriteLine(getChar);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...