Styga yra baigtinė simbolių seka, dažniausiai naudojama tekstui, nors kartais tai yra savavališki duomenys.

Styga yra baigtinė simbolių seka, dažniausiai naudojama tekstui, nors kartais tai yra savavališki duomenys.

Dauguma programavimo kalbų suteikia specialius styginių duomenų tipus arba bendresnes priemones ir konvencijas styginiams tvarkyti; taip pat suteikia galimybę žymėti styginių literatūrą. Kai kuriose programavimo kalbose viskas yra eilutė , pavyzdžiui, Tcl. Iš esmės teikiama speciali įvairaus sudėtingumo paramos biblioteka.

Styginių vaizdai labai skiriasi funkcionalumu; teisingas eilutės tipas gali lengvai sumažinti algoritmų eiliškumą, o neteisingas - netgi negalės pateikti eilutės duomenų.

Kai kurie išrinkti atstovai:

  • Nulinės galios stygos (a) C-eilutės, ASCIZ, sz) yra nulinės elementų, baigiančių specialią nulinį elementą, masyvai (variantai, kuriuose naudojamas kitas galutinis simbolis, dažniausiai apsiriboja senomis sistemomis, pavyzdžiui, DOS palaiko $ ).
  • Suskaičiuota eilutė (dar žinoma kaip Pascal Strings) yra savavališkų baitų masyvai su ilgio žymeklio prefiksu. Šiuo metu suskaičiuotų linijų dydį riboja turima adresų erdvė, nors dažnai dažnai naudojamas vienas baitas (tai reiškia, kad maksimalus ilgis yra 255).
  • Lynai, kurie yra segmentų sąrašai (pavyzdžiui, ilgis + žymekliai prie modifikuojamų ir nekeičiamų buferių), skirti efektyviam įterpimui ir ištrynimui.

Daugelis (ypač funkcinių) kalbų palaiko eilutes kaip pagrindinių simbolių sąrašą.

„Unicode“ palaikymui bendra eilutės tipo eilutė tampa įprasta, nes „Unicode“ simboliai gali turėti savavališką ilgį, net ir UTF-32. Tai leidžia efektyviai indeksuoti simbolius stumdami simbolių rinkinio sudėtingumą į eilutės tipą.

Daugumoje kalbų stygos gali būti kartojamos, panašios į sąrašus / masyvus. Kai kuriose aukšto lygio kalbose (kuriose stygos yra duomenų tipas), stygos yra nekintamos, todėl styginių operacijos sukuria naujas eilutes.

Teksto eilutėms naudojamos daug koduotės, nors šiuolaikinis naudojimas konvertuoja į „Unicode“, naudojant UTF-8 (kai kurie ankstyvieji „Unicode“ pasekėjai vietoj UCS2 į UTF-16 formą pakeitė atkaklumo formatą).

„Windows“ programinė įranga dažnai priima „WinAPI“ konvenciją dėl naudojimosi „UTF-16“ viduje, konvertuodama į išorinius duomenis ir atkaklumą vietoj sistemos skambučių.

String Literal - tai eilutės frazės String Literal išeities kode, paprastai įterpiama į atskirus ribotuvus (pvz., C / C + + ir „Java“ eilutės raštą supa dvigubos kabutės - „Tai yra eilutė“.

Naudingos nuorodos: