*   >> Lese Utdanning Artikler >> science >> programming

En grundig titt inn C ++ Kjerne String

v denne pekeren er laget 's'. Pekeren inkrementeres et antall ganger, og til hvert inkrement, blir en char tilordnet. '\\ 0' er tilordnet den siste inkrementet. Du har nå en sammenhengende serie i minnet med ordet, "streng"; ved slutten av dette ord, har man '\\ 0'. Etter denne pekeren er dekrementert å peke på det første tegnet, 's', i strengen. Den domstol objekt fra iostream header har blitt utformet på en slik måte at det ville ta peker til en char og vise tegnene begynner fra at pekeren til den ser \\ 0. Det er det nest siste setningen i koden ovenfor gjør. Prøv koden.

Array og Core String En matrise kan brukes til å definere en kjernestreng. Navnet på en matrise er en konstant peker. I motsetning pekeren vi så ovenfor, kan du ikke øke rekken navn fordi den er konstant. Du kan imidlertid definere en kjerne streng ved hjelp av en matrise. Vi har sett at en streng er en serie av tegn i påfølgende minneceller og siste tegn (char) av disse cellene er \\ 0. Så for å bruke en matrise for å definere en streng, la matrisen være en rekke tegn; det siste tegnet av tabellen bør være en \\ 0.

Følgende kode illustrerer dette: # include bruker namespace std; int main () {char str [] = {'a', '', 's', 't', 'r', 'i', 'n', 'g', '\\ 0'}; domstol returnere 0; } Verdien av strengen er "en streng". Legg merke til at for å få en plass som et tegn jeg typen, ''. Skrev en plass i enkle anførselstegn. I minnet at plassen vil være representert med et stykke kode for en byte lengde. Merk: Matrisen navn er en peker (konstant pekeren) som peker til det første element i matrisen (i dette tilfelle, av tegn). Den domstol objektet vil sende ut alle tegnene begynner fra pekeren, til den ser \\ 0.

En String of Constant innhold Når du skriver en streng i anførselstegn i C ++, som (tekst i anførselstegn) kalles en streng bokstavelig. En tom streng bokstavelig er åpning og lukking doble anførselstegn bare ved siden av hverandre. De doble anførselstegn (enten tom eller ikke) returnerer en peker til det første tegnet i en streng hvis innhold er konstant. Følgende kode illustrerer dette: # include bruker namespace std; int main () {const char * str = "a string"; domstol returnere 0; } Du må tilordne returverdien av de doble anførselstegn til en const char *.

const char * betyr at innholdet av objektet pekt på av pekeren, er konstant. I koden, er innholdet "en streng". I minnet, er plassen en bytekode. Også i minne, serier av tegn som danner strengen slutter med \\ 0 (som ikke ville bli vist).

Page   <<  [1] [2] [3] >>
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.