Эквивалент назначения char на c ++ для c #

Кто-нибудь знает, как реализовать следующий код C ++ в C #

C ++

char t = '\0';
t += (char)3;

вывод t будет равен ‘\ x3’

если я реализую тот же код в C #

char t = '\0';
t += (char)3;

выход будет другим t = ‘\ u0003’

Как я мог получить такой же результат в C # ??
Спасибо

-1

Решение

На обоих языках escape-последовательность \xnn представляет символ с указанным байтовым значением nn в шестнадцатеричном формате.

На обоих языках escape-последовательность \unnnn представляет кодовую точку Unicode nnnn,

Бывает, что значение 3 байта соответствует кодовой точке Юникода U + 0003 в кодировке, используемой C #. Вот почему вывод в C # \u0003,

Код на обоих языках делает примерно одно и то же, и оба ts будет хранить значение 3 после запуска обоих кодов. Разница заключается в формате вывода. Я не знаю как ты получаешь \u0003 как вывод в C #. Console.WriteLine выведет символ, а не его кодовую точку Unicode.

Вы не можете получить тот же вывод в C #, потому что C # chars представлены иначе, чем в C ++. C ++ chars обычно 1 байт, в то время как C # chars такие большие, как ushort,

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]