David J. Malan: Ajmo napisati program koji traži od korisnika za niz i zatim nastavite tiskati taj niz znak za znakova po retku. Sada je u prošlosti, mi bi učinili Vjerojatno s kvadratnom nosača zapisa, učinkovito liječenje niza je niz znakova. Ali ovaj put, neka je, umjesto liječenje string za ono što stvarno jest, pokazivač ili adresa. Naime, adresa karakter, zapravo adresa Prvi znak u nizu likovi koje smo kolektivno znaju kao niz. Neka prvi proglasiti niz za ono što stvarno jest, char *. A mi ćemo nazvati to je. A onda je ustupiti povratak Vrijednost get nizu. Idemo naprijed napraviti neki provjera. Ako je nula, neka se odmah vrati tako da mi slučajno ne bi dereference tom null pointer. Dalje, neka je ponoviti više likovi u kako slijedi. Za int, i dobiva 0. n jednaka duljine od s.. Učinite to tako dugo dok sam je manji od n. I na svakoj iteraciji, prirast i. I ono što želimo učiniti na svakoj iteraciji? Idemo sada ispisati na svakoj iteraciji jedan znak slijedi novi redak. Pa, ono lik učiniti želimo ispisati? Ja predlažem da odemo na adresu koja je jednaka zbroju s plus ja. Sada, zašto se taj izraz? Pa, podsjetiti da je pohranjena u sekundi je adresu prvog znaka u našem nizu, je. U međuvremenu, ja se porastao na svake iteracije tako da se počne na 0, onda ide na 1, a zatim odlazi u 2.. Dakle, drugim riječima, s plus i učinkovito predstavlja adresu i-ti znak u sekundi. Pa ako ćemo ići na tu adresu putem operatora *, mi ćemo biti idući u i-ti znak u nizu. I to je vrijednost koja će biti zamijeniti za naše rezervirano mjesto, posto C. Idemo potvrditi koliko. Idemo spasiti, sastaviti i pokrenuti ovaj program. Napravite naputke, Dot Slash naputke. A sada ću dati string kao bok. Upišite. I doista, vidim H-E-L-L-a, s svaki char na vlastitu liniju.