C/Napisy: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Ponowne przypisanie zera jest zbędne, tablica została już wyzerowana przy deklaracji.
Linia 470:
 
=== Jaki rozmiar i jakie kodowanie? ===
Unicode <ref>[http://unicodebook.readthedocs.org/en/latest/programming_languages.html#c c i unicode]</ref>określa jedynie jakiej liczbie odpowiada jaki znak, nie mówi zaś nic o sposobie dekodowania (tzn. jaka sekwencja znaków odpowiada jakiemu znaku/znakom). Jako że Unicode obejmuje 918 tys. znaków, zmienna zdolna pomieścić go w całości musi mieć przynajmniej 3 bajty. Niestety procesory nie funkcjonują na zmiennych o tym rozmiarze, pracują jedynie na zmiennych o wielkościach: 1, 2, 4 oraz 8 bajtów (kolejne potęgi liczby 2). Dlatego też jeśli wciąż uparcie chcemy być dokładni i zastosować przejrzyste kodowanie musimy skorzystać ze zmiennej 4-bajtowej (32 bity). Tak do sprawy podeszli twórcy kodowania Unicode nazwanego UTF-32/UCS-4.
{{wikipedia|UTF-32}}
Ten typ kodowania po prostu przydziela każdemu znakowi Unicode kolejne liczby. Jest to najbardziej intuicyjny i wygodny typ kodowania, ale jak widać ciągi znaków zakodowane w nim są bardzo obszerne, co zajmuje dostępną pamięć, spowalnia działanie programu oraz drastycznie pogarsza wydajność podczas transferu przez sieć.
Linia 527:
 
<noinclude>
 
== Zobacz też ==
* [[C/Napisy - własna implementacja]]