Może to być niedojrzały pytanie, można ja czegoś brakuje, ale moje pytanie jestChar int konwersję dostać ASCII
Próbuje przekonwertować char
do int
uzyskać ASCII wartość tej char
, w większości przypadków Otrzymuję prawidłowy/oczekiwany kod ASCII dla konkretnego char
, w niektórych przypadkach nie. Czy ktoś może mi wyjaśnić, dlaczego?
Przykłady:
// Example 1:-
Console.WriteLine((int)'a');
// gives me 97 perfect!
// Example 2:-
Console.WriteLine((char)1); gives me ☺
// now
Console.WriteLine((int)'☺');
// this should give me 1, instead it gives me 9786 why?
Dzieje się tak ASCII>127
lub ASCII < 32
.
Może to być coś, czego szukasz: [link] (http://stackoverflow.com/questions/3665757/c-sharp-convert-char-to-int) – Brandon
Nie ufałbym wyświetlanemu znakowi być unikalną reprezentacją podstawowej wartości znaku, szczególnie w przypadku tych znaków o niskiej wartości. – hatchet