Jaki jest kod asci pierwiastka?

0

Zauważyłem w spisie taki sam temat, ale wrzucam nowy, bo chodzi mi o to, że staram się uzyskać znak pierwiastka dając 251, ale nie przez "\u", tylko trochę inaczej. W sumie prawie poradziłem sobie sam, bo wypisałem sobie przy pomocy pętli for i kontrolki datagridview listę symboli asci, ale zupełnie nie rozumiem dlaczego pod 251 nie ma pierwiastka, tylko jest u z akcentem na górze.

Dlaczego na liście symboli nie ma pierwiastka, skoro cały net aż dudni, że pod 251 jest pierwiastek.
Oczywiście win forms.

 int[] kod = new int[256];
char[] ckod = new char[256]; 
for (int i = 0; i <= 255; i++)
            {
                kod[i] = i;
                ckod[i] = (char)kod[i];
                dataGridView.Rows.Add();
                dataGridView.Rows[i].Cells[0].Value = i;
                dataGridView.Rows.Add();
                dataGridView.Rows[i].Cells[1].Value = ckod[i];

            }
1

@Wybitny Młot, prędzej to - https://pl.wikipedia.org/wiki/ASCII

ASCII posiada wąski zakres znaków, bo tylko 128 (indeksowanie od 0 do 127) i w tym zbiorze nie ma znaku pierwiastka - źle nazywasz to co potrzebujesz; Być może można ten znak znaleźć w lokalnym ANSI, w każdym razie na pewno istnieje w Unicode - zobacz tutaj.

2

Mówiąc ściślej pierwiastek występuje pod kodem 251 tylko w stronie kodowej https://en.wikipedia.org/wiki/Code_page_437 która jest używana pod kodami z altem dla angielskich wersji windowsa. W polskich wersjach jest używana strona kodowa https://en.wikipedia.org/wiki/Code_page_852

To wszystko dla zachowania kompatybilności z czasami DOSa gdzie właśnie polską stroną kodową była CP852, a na przykład w ameryce CP437

Po to jednak wprowadzono Unicode żeby z niego korzystać więc odpowiadając na pytanie - pierwiastek nie ma kodu ASCII, ma kod 251 w stronie kodowej 437 i kod 8730 w UTF

0

Dodam jeszcze że Twój program będzie wyświetlał co innego w zależności od ustawień regionalnych systemu na którym jest uruchamiany - może wyglądać całkowicie inaczej u innej osoby
Ustawienia zmienia się w panelu sterowania - Region - Administracyjne - Język dla programów nieobsługujących kodu Unicode

Dlatego właśnie powinno się zawsze używać unicode żeby nie dopuścić do sytuacji że Twój pierwiastek zamieni się u kogoś w "u z akcentem na górze"

0

To wszystko dla zachowania kompatybilności z czasami DOSa gdzie właśnie polską stroną kodową była CP852, a na przykład w ameryce CP437

Sprawa jest bardziej skomplikowana. Windows operuje na dwóch stronach kodowych: inna jest pod konsolą (tzw. OEM), a inna w programach okienkowych (tzw. ANSI).

Przykładowo, przy polskich ustawieniach językowych są to kodowania 852 i 1250, a przy angielskich 437 i 1252.

Pytanie więc, czy ten pierwiastek ma być wyświetlony pod konsolą czy w oknie graficznym.

0
finito napisał(a)

W sumie prawie poradziłem sobie sam, bo wypisałem sobie przy pomocy pętli for i kontrolki datagridview listę symboli asci, ale zupełnie nie rozumiem dlaczego pod 251 nie ma pierwiastka, tylko jest u z akcentem na górze.

@Azarien - raczej chodzi o okienka.

1 użytkowników online, w tym zalogowanych: 0, gości: 1