C ++ Att ta tjuren vid hornen - Del 13 Inledning Detta är en del 13 av min serie, C ++ Att ta tjuren vid hornen. En sträng är en mänskligt språk ord, fras eller mening. I denna del av serien, ser vi hur en sträng kan lagras i minnet och hämtas från minnet. Innan vi fortsätter, kom ihåg att ett objekt är en region i minnet. Som jag sa, jag presenterar C ++ för dig i denna serie hur uppfinnarna ser det. Jag gör presentationen i enkla termer. Jag tror att på detta sätt skulle du förstå C ++ bättre. Kom ihåg att ta saker i denna serie som jag ger dig.
Försök inte att lägga till eller dra ifrån någon idé i ditt sinne till eller från vad jag ger dig; det skulle vara vilseledande. Du kan göra något subtraktion eller tillägg när du är klar serien. Obs: Om du inte kan se koden, eller om du tror att något saknas (bruten länk, bild frånvarande), bara att kontakta mig på [email protected]. Det vill säga, kontakta mig för minsta problem du har om vad du läser. Ingen Objekttyp för String C ++ har objekttyper för int, _Bool, flyta, röding och ogiltiga. C ++ har inte någon typ föremål för stråkar.
Så sätt måste utarbetas för att lagra och hämta snören från minnet. Tecken i ett Array Ett exempel på en sträng är "mannen". Vi har ett objekt typ för tecken som är röding. För att lagra en sträng i minnet vi behöver lagra tecken (tecken) som representerar strängen som konsekutiva objekt i minnet. Ett bra sätt att göra detta är att ha tecken i en array. Vi vet att element (objekt) i en array lagras konsekutivt. Så det här är början på vår lösning.
Tänk på följande sträng: "mannen" Strängen kan lagras i en matris enligt följande: char myStr [] = {'t "," h "," e ",' '," m "," ett "," n '}; När du initierar en rad som denna, alla objekt i uppsättningen är butiken i minnet följd. Observera att varje tecken i strängen är nu ett objekt av typen, röding, i arrayen. Observera också att utrymmet mellan orden "" och "man" också lagras i arrayen i ett objekt, som "". Kom ihåg att i initieringen av en matris, är alla gruppelementen separerade med kommatecken.
För att vi ska skrivas ut (hämta) elementen i matrisen så att de visas som en sträng som du skulle skriva (tecken i en grupp), skulle vi behöva skriva ut ett tecken i taget utan att skriva ut nyrad (\\ n) karaktär som skulle orsaka tecken som ska skrivas ut på nya (olika) linjer. Följande kod illustrerar detta: #include using namespace std; int main () {char myStr [] = {'t "," h "," e ",' '," m "," a "," n "}; cout cout återv
Att bygga din allra första C # …