Ahogy egyre több nyelvet kezdtünk használni a számítógépeken, hirtelen szükségessé vált, hogy több karaktert tudjunk reprezentálni, mint arra az ASCII képes volt (mely 1 byteon tárolt a karaktereket, így összesen 256 különböző karaktert megengedve).
Az utf-8 egy olyan formátum, ami 1-4 bájt közötti hosszal rendelkezik karakterenként, ezzel
lényegesen megnövelve, hány karaktert is képes reprezentálni. Mivel a gyakori, ASCII-ban is
előforduló karakterek itt is egy bájton vannak reprezentálva, ezért a kódolás nem pazarolja a
helyet fölöslegesen. Ugyanakkor, a változó hossz iatt így már nem lehet egyszerűen lekérni a
szöveg egyes karaktereit (O(1) időben) azzal, hogy a szövegbe indexelünk (pl.:
szövegem[3]
), hisz könnyen meglehet, hogy mindegyik karakter más hosszúságú, így az indexelt
karakter lehet nem is ott van, ahol a program keresné. Ehelyett a megoldás az, hogy
végigiterálunk a szövegen, amíg a keresett karaktert el nem érjük (O(n) időben).
Ferris: "Csak örülni tudok, hogy az utf-8 segítségével a víz alatti barátaim képei megjelenhetnek!"
🐠🐙🐟🐬🐋