DAVID J. MALAN: La oss skrive et program som ber brukeren om en streng og deretter fortsette å skrive strengen tegn for tegn per linje. Nå i det siste, ville vi ha gjort det sannsynligvis med hakeparentes notasjon, effektivt behandle en streng er en rekke tegn. Men denne gangen, la oss i stedet behandle en streng for hva det egentlig er, en pekeren eller en adresse. Nærmere bestemt, adressen til en karakter, egentlig adressen til første tegnet, på en sekvens av tegn på at vi kollektivt vet som en streng. La oss først erklære en streng for hva det egentlig er, char *. Og vi vil kalle det er. Og dermed tilegne den avkastningen Verdien av get streng. La oss neste gjøre noen feilsjekking. Hvis s er null, la oss umiddelbart tilbake slik at vi ikke tilfeldigvis deferanseoperasjon at nullpeker. Neste, la oss iterere over tegn i s som følger. For int, får jeg 0. n er lik strengen lengden på s. Gjør dette så lenge jeg er mindre enn n. Og på hver iterasjon, øke jeg. Og hva gjør vi ønsker å gjøre på hver iterasjon? La oss nå skrive ut på hver iterasjon et enkelt tegn etterfulgt av en ny linje. Vel, hva karakter gjør vi ønsker å skrive ut? Jeg foreslår at vi går til adressen som er lik summen av s pluss jeg. Nå, hvorfor det uttrykket? Vel, husker at lagret i s er det adressen til det første tegnet i vår strengen, s. I mellomtiden, jeg blir økes på hver iterasjon, slik at den starter på 0, deretter går til en, går deretter til to. Så med andre ord, s pluss jeg effektivt representerer adressen i-te karakter i s. Så hvis vi går til denne adressen ved hjelp av den * operatør, vil vi gå til i-ende tegn i strengen. Og det er den verdien som vil være byttet ut med vår plassholder, prosent C. La oss bekrefte så mye. La oss redde, kompilere, og kjøre dette programmet. Gjør pekere, dot slash pekere. Og nå skal jeg gi det en strengen som hallo. Enter. Og ja, jeg ser H-E-L-L-O, med hver røye på en egen linje.