lin6 , Lian

Lánc karakter

String adattípusok[ szerkesztés ] Egy string adattípus egy olyan adattípusamely egy ideális formális stringet modellez. A stringek az egyik legfontosabb és leggyakrabban használt adattípusok, ezért lényegében minden programozási nyelvben létezik valamilyen megvalósításuk.

Karakterláncfüggvények és használatuk

Néhány nyelvben az elemi típusok közé tartozik, más nyelvek az összetett típusok közé sorolják. A legtöbb magas-szintű programozási lánc karakter szintaxisa megengedi a string használatát, általában valamilyen idézőjeles formában, és a string adattípus egy bizonyos megjelenéseként tekintik; a meta-stringre viszont gyakran literál vagy string literál kifejezésekkel hivatkoznak.

Annak ellenére, hogy a formális string tetszés szerinti de véges hosszúságú, a megvalósított nyelvekben ez a hossz gyakran mesterségesen maximalizált. Általánosságban, két fajtája létezik a string adattípusnak: lánc karakter hosszúságú stringek, amikor a függetlenül attól, hogy a string elemeinek száma eléri-e a maximumot, mindig ugyanakkora memóriaterületet foglalnak le a tárolásához, változó hosszúságú stringek, ahol a string hossza nem fix, és csak az aktuális hossza szerinti helyet foglal el memóriában.

lánc karakter csepp férgek ellen férgek ellen

A modern programozási nyelvekben a legtöbb string változó hosszúságú. Ellentétben a nevével, még a változó hosszúságú string hossza is korlátozott, gyakorlatilag a rendelkezésre álló számítógép memória mennyisége a korlát. Történetileg, a string adattípus esetében egy byte tartozott egy-egy karakterhez, annak ellenére, hogy a különböző karakter kódtáblák régiónként változtak, a tényleges tartalom gyakorlatilag a programozóktól függött. Később több kódtáblát használtak azonos régiók, így a programozók egyre gyakrabban szegték meg az egy karakter-egy byte szabályt.

Karakterláncból tömb

A megoldást az jelentette, hogy a megvalósítás során 1 byte-os kódokat használtak az ASCII karakterek esetén, és két byte-os kódokat a CJK szóképek esetén. Ez a megoldás azonban több szempontból is problematikus: nem lehet a stringeket összehasonlítani és darabolni, csak ha pontosan ismert, milyen a tárolás kódja, de ebben az esetben is kérdéses az összehasonlítás a különböző kódolású lánc karakter között, valamint a rendezés.

lánc karakter galandféreg találat

Néhány más kódolási forma, mint például az EUC család biztosítja, hogy az ASCII tartományban csak megfelelően kódolt 1 byte-os értékek legyenek, és megszokásnak megfelelően lánc karakter mint mezőelválasztók. Más megoldások, mint az ISO és a shift-jis nem biztosítják ezeket a feltételeket, a karakterek összehasonlítása bizonytalan. A Unicode csak tovább bonyolítja a helyzetet.

lánc karakter paraziták jávorszarvasban

A legtöbb nyelvben létezik adattípus Unicode stringekre általában az UTFamit a Unicode előtt használtak. A Unicode és a lokális kódolás közötti konverzióhoz alapvetően szükséges a helyi kódolás alapos ismerete, de így is gondot okozhat, ha különféle módon kódolt stringeket adatátviteli vonalon keresztül továbbítanak, olyan jelzés nélkül, hogy milyen kódolású az adott string.

Megvalósítása[ szerkesztés ] Egy string megvalósítása erősen függ attól, hogy milyen karakter készletet használ és milyen kódolást támogat a megvalósítás környezete. A régebbi string megvalósításokat úgy tervezték, hogy azok az ASCII karakterekre támaszkodtak, míg az újabb megvalósítások már az ISO sorozat bővítéseit is figyelembe veszik.

lánc karakter pinworms hogyan kell kezelni a gyógyszereket

A legtöbb string megvalósítás nagyon hasonlít egy változó hosszúságú tömb megvalósításához, ahol az elemek tárolása karakter kódok segítségével történik. A fő különbség az, hogy a string esetében logikailag csak bizonyos kódolású karakterek tárolása megengedett.

Well , now it finally turns out which is the best chainsaw . Nos , melyik a legjobb láncfűrész ?

Tulajdonképpen ez történik, ha UTF-8 kódolást használnak, ekkor egy karakter egy és négy byte közötti helyet foglal el. Ebben az esetben például a string hossza különbözik a tömb hosszától. A string hossza tárolható úgy, hogy implicit módon egy speciális záró karaktert használnak; ez a karakter általában a null karakteramelynek értéke nulla, ezt a konvenciót használja a népszerű C programozási nyelv.

Ezért a fenti megvalósításra gyakran hivatkoznak C stringként.

Lánc karakter

Más megvalósítás esetén a string hosszát is számszerűen tárolják, általában byte -okban megadott hossza megelőzi a string karaktereit — ezt a konvenciót használja a Aceton szaga a szájból hőmérsékleten ; ezért néhányan ezt P-stringnek nevezik. A karakterrel lezárt stringek esetében szabály, hogy a lezáró karakter lánc karakter lehet olyan karakter, amely előfordulhat a stringben.

Egy példa mutatja, miképp történik egy null-terminated string vagy nullával lezárt string tárolása egy 10 byte-os pufferbenASCII kódolás használata mellett: F.