perusteellisen Perehdy C ++ sydänköyden Johdanto C ++ ei ole ydin objekti tyyppi merkkijono. Sydänköyden johdetaan koodaaja. C ++ on kuitenkin, merkkijono luokan niin sanotussa, standardi malli kirjasto. Käyttämällä tätä String luokka on valinnainen. Merkkijono luokka ja ominaisuudet standardin mallikirjasto käyttää C ++ sydänköyden deferent tavoin. Tämä tarkoittaa sinun täytyy ymmärtää perusteet sydänköyden ja eri tapoja käyttää sitä. Tämä artikkeli antaa sinulle syvällistä tarkastella C ++ sydänköyden ja eri tapoja käyttää sitä.
Huomautus: Jos et näe koodia tai jos luulet jotain puuttuu (rikki linkki, kuva poissa), vain yhteyttä minuun [email protected]. Eli minuun yhteyttä pienintäkään ongelmaa olet mitä luet. Sinun täytyy olla perustiedot C ++ ennen lukenut tämän artikkelin. Jos sinulla ei ole tätä tietoa, lue sarjan kirjoitin, jonka ensimmäinen osa on nimeltään "Aloittaminen C ++". Päästäkseen artikkelin, kirjoita otsikko ja nimeni hakukenttään tämän sivun ja valitse Etsi. Johtaminen sydänköyden merkkijono on jatkuva sarja nieriää esineiden muistiin. Ei ole aukko sarjassa.
Sanalla aukko, viittaan yksi tai useampi peräkkäinen muisti soluja, jotka on (ovat) eivät liity objektityyppi. Huomaa, tila kirjoittama välilyöntiä avain näppäimistö, ei luo aukon merkkijono. Se antaa oivan char kanssa char arvo. Tämä on kuten muutkin nieriä arvoja, mutta sen sijaan, että näytetään merkki ruudulla on näyttö tilaa. Tämä tarkoittaa, sikäli kuin tietokone on kyseessä, tila on merkki (char). Miten String rajattava muistista? Alku merkkijonon muistiin tunnistetaan char *, joka on osoitin ensimmäiseen char merkkijonon. Lopussa merkkijono on null merkki, \\ 0.
Se on \\ jälkeen nolla (ei kirjain O). Tämä null hahmo on osa merkkijono, mutta se ei normaalisti näytöllä tai painettu. Jos osoitin ei ole vakio osoitin (vakio muisti osoite), niin se voidaan kasvattaa osoittamaan seuraavan merkin merkkijonon. Olkaamme nyt muodostavat sydänköyden. Seuraava koodi kuvaa tätä: # include using namespace std; int main () {char * str; * Str = 's'; * (++ Str) = 't'; * (++ Str) = 'R'; * (++ Str) = 'i'; * (++ Str) = 'n'; * (++ Str) = "g"; * (++ Str) = '\\ 0'; --str; --str; --str; --str; --str; --str; cout palata 0; } Koodissa, osoitin char ensin ilmoitettu.
Seuraava arvo tämän osoittimen on tehty n ". Osoitin kasvatetaan useita kertoja, ja kukin lisäys, char on määritetty. '\\ 0' annetaan viimeinen lisäys. Sinulla on nyt jatkuva sarja muistissa sanalla, "merkkijono"; lopussa tämän