En grundig Se inn C ++ Kjerne String Innledning C ++ ikke har en kjerne objekttype for streng. Kjernestrengen blir utledet ved koderen. C ++ har imidlertid en streng klasse i det som kalles, standard mal biblioteket. Ved hjelp av denne strengen klassen er valgfritt. Strengen klasse og funksjoner av standard mal bibliotek bruke C ++ kjerne streng i Utsettelse måter. Dette betyr at du må forstå det grunnleggende kjernen strengen og de ulike måter å bruke det. Denne artikkelen gir deg en grundig titt på C ++ kjerne streng og de ulike måter å bruke det.
Merk: Hvis du ikke kan se koden, eller hvis du tror noe mangler (ødelagt kobling, bilde fraværende), bare kontakte meg på [email protected]. Det er, kontakt meg for den minste problemet du har om hva du leser. Du må ha grunnleggende kunnskaper i C ++ før du leser denne artikkelen. Hvis du ikke har denne kunnskapen, så les den serien jeg skrev som første del har tittelen, "Komme i gang med C ++". For å komme til artikkelen, skriver tittel og navnet mitt i søkeboksen på denne siden og klikk Søk. Utlede Core streng En streng er en kontinuerlig serie av røye objekter i minnet.
Det er ingen gap i serien. Ved ordet gapet, er jeg henviser til en eller flere påfølgende minneceller som er (er) som ikke er forbundet med en objekttype. Legg merke til, en plass skrevet av mellomromstasten tasten på tastaturet, ikke skaper et gap i en streng. Det setter i en char med en char verdi. Dette er akkurat som andre char-verdier, men i stedet for å bli vist som et tegn på skjermen er det skjermen som plassen. Dette betyr, så langt som datamaskinen er opptatt av, er en plass et tegn (char).
Hvordan er en streng avgrenset i minne? Starten på en streng i minnet, blir identifisert av en char *, som er en peker til den første char av strengen. Slutten av en streng er det null tegn, \\ 0. Det er \\ fulgt av null (ikke bokstaven O). Denne nulltegn er en del av strengen, men det er normalt ikke vist på skjerm eller skrives ut. Dersom pekeren ikke er konstant, peker (konstant minneadresse), så det kan inkrementeres til å peke på det neste tegnet i strengen. La oss nå utgjør en kjerne streng.
Følgende kode illustrerer dette: # include bruker namespace std; int main () {char * str; * str = 's'; * (++ str) = 't'; * (++ str) = 'r'; * (++ str) = 'jeg'; * (++ str) = 'n'; * (++ str) = 'g'; * (++ str) = '\\ 0'; --str; --str; --str; --str; --str; --str; domstol returnere 0; } I koden, blir pekeren til en char først erklært. Neste verdien a