*   >> Lezen Onderwijs artikelen >> science >> programming

Core String in C ++

'\\ 0' is niet handig voor de programmeur. Zodat de uitvinders van C ++ besloten om 1) de plaats van de char array-blok, dat eindigt met de nul-karakter met een string tussen dubbele aanhalingstekens. 2) De getypte string tussen dubbele aanhalingstekens geeft een pointer (geheugen adres) naar het eerste element van de vervangen array. 3) Deze pointer is de string aanwijzer en een context (bijvoorbeeld cout Object) kan het gebruiken om een ​​string terug.

4) De geretourneerde pointer uit de aanhalingstekens, kan worden gebruikt bij de initialisatie van een char pointer naar een string te maken. De volgende code illustreert deze: #include using namespace std; int main () {char * herStr = "de vrouw"; cout 0 terug; } Lees en probeer de bovenstaande code als je dat nog niet hebt gedaan (u kunt een waarschuwing ontvangen, maar gewoon negeren voor nu). Merk op dat in de initialisatie van pointers van andere objecten, de rechter operand geeft het adres (bv & myInt) van een object. Iets dergelijks is hier gebeurd. Een adres is een pointer.

U kunt de initialisatie in de verklaring en de opdracht gesplitst zoals in de volgende code (als je de code te proberen, kan je een waarschuwing krijgen - gewoon negeren dat voor nu): #include using namespace std; int main () {char * herStr; herStr = "de vrouw"; cout 0 terug; } Op dit punt kan je je afvragen hoe de voorgedefinieerde cout object en de bijbehorende operanden gebruiken; maak je geen zorgen, zullen we de cout object later in de serie te bestuderen. Letterlijke tekenreeks Een tekenreeks tussen dubbele aanhalingstekens wordt een letterlijke tekenreeks.

Het verhogen en verlagen van String Pointer Strikt genomen is er geen snaar pointer. Echter, als je initialiseren (of te verklaren en toe te wijzen) een string in de bovenstaande situaties, dan kun je zeggen dat je een string wijzer. Je kan verhogen of verlagen de aanwijzer (adres in de pointer object) wijzen op de volgende of vorige teken (object) in de string, aangezien de string wordt opgeslagen als een array (eindigend \\ 0) in het geheugen.

Lees en probeer de volgende code, die dit illustreert (u kunt een waarschuwing - gewoon negeren dat nu): #include using namespace std; int main () {char * herStr = "de vrouw"; cout ++ herStr; cout ++ herStr; cout 0 terug; } De waarde (char) krijgt aangewezen door de string aanwijzer het dereference operator (*) wordt gebruikt. Constant Pointer een String Een constante pointer naar een string wijst naar het eerste teken van de sn

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.