eks & Myint) af en genstand. En lignende ting, der er sket her. En adresse er en pointer. Du kan opdele initialisering i erklæringen og tildeling, som i følgende kode: #include int main () {char * herStr; herStr = "kvinden"; printf (herStr); tilbage 0; } På dette tidspunkt kan du spekulerer hvordan du bruger printf () funktion og dens argumenter (poster i parentes); fortvivl ikke, skal vi studere printf funktion senere i serien. String Literal En streng i dobbelte anførselstegn kaldes en streng bogstavelig. Forøgelse og formindskelse String Pointer Strengt taget er der ingen snor pointer.
Men hvis du initialisere (eller erklære og tildele) en streng som i ovennævnte situationer, så kan du sige, du har en streng pointer. Du kan forøge eller formindske markøren (adresse i markøren objekt) til at pege på den næste eller forrige tegn (objekt) i strengen, da strengen er gemt som et array (slutter med \\ 0) i hukommelsen.
Læs og prøv følgende kode, som illustrerer dette: #include int main () {char * herStr = "kvinden"; printf ("% c", * herStr); printf ("\\ n"); ++ herStr; printf ("% c", * herStr); printf ("\\ n"); ++ herStr; printf ("% c", * herStr); printf ("\\ n"); tilbage 0; } For at få værdien (char) peget på af strengen pointer er dereference operatør (*), der anvendes. Konstant Pointer til en String En konstant pegepind til en streng peger på det første tegn i strengen og pilen (adresse i markøren objekt) ikke kan være forandring. Det betyder, at adressen ikke kan øges eller formindskes.
De to følgende udsagn viser, hvordan du kan skabe en konstant pointer til en streng: char myStr [] = {'t', 'h', 'e', '', 'm', 'a', 'n', ' \\ 0 '}; char * const myStr = "manden"; Begge disse konstante pointere ville returnere hele strengen, i en bestemt kontekst (printf funktion), men du kan ikke øge eller mindske den. Hvis i det andet tilfælde, har du bare en karakter pointer i stedet for e