DAVID J. MALAN: La oss ta ting ett skritt videre, nå. Anta at jeg ikke bare vil å skrive ut alle mine programmets kommandolinjeargumentene. Men jeg, i stedet, ønsker å skrive ut alle individuelle tegn i hvert av mine kommandolinjeargumenter, én per linje, slik at ved å kjøre denne program, I bare ser en strøm av tegn på skjermen som kollektivt er fra min sekvens av kommandolinjeargumenter. Vel, hvordan kan jeg gjøre dette? Jeg kan holde intakt min sløyfe fra før hvorved jeg iterativ fra jeg frem til Argc for å integrere over hele kommandolinjeargumenter selv. Men nå, innenfor hver iterasjon av at loop, trenger jeg å nå iterere over hver av tegn eller tegn i et bestemt streng. Så for å gjøre det, trenger jeg en mer loop. La oss legge til at. for int, la oss kalle det j, er lik 0. Nå kommer jeg til å trenge å integrere opp til lengden av aktuelle strengen i ARGV. Så la meg gi meg en annen lokal variable, vil vi kalle det n, og angi som er lik lengden av strengen gjeldende argument, som kommer til å være funnet i ARGV brakett jeg semikolon. La meg nå iterere fra j opp inntil n etterfulgt av en øke på hver iterasjon. La oss nå skrive den enkelte tegn på skjermen. Printf% c denne gang etterfulgt av en ny linjen, nær sitat, komma, og nå har jeg trenger den j-te karakter i i-te argument. Så for å få på det, kan jeg rett og slett spesifisere ARV brakett jeg å får i-te argument. Og så kan jeg dykke i ett nivå dypere og gjøre en sekundær indeks over brakett j, sluttparentes, semikolon, spar. Og la oss nå samle og kjøre dette programmet. Gjør ARGV2 - ikke helt hva jeg hadde ventet. La oss bla opp til den første av disse feilmeldingene. Og i rødt her, ser vi feil, implisitt erklære bibliotek funksjon strlen med type - oh, vent litt. Dette er første gang jeg har brukt strlen, og jeg ikke hadde forutsett som ønsker det i starten, så jeg ikke inkluderte topptekstfilen som erklærer en streng lengde funksjon. Så på toppen av filen min, tilbakekalling, har jeg CS50.h. Jeg har standard io.h. Men det viser seg, og jeg vet dette fra lese dokumentasjonen, at jeg trenger en tredje header-fil hvis jeg, ja, ønsker å bruke strlen-funksjonen. At funksjonen er erklært i string.h. La oss lagre filen på nytt, kompilere og kjøre. Og denne gangen, gjør vi ikke bare se hver av argumentene. Vi i stedet se hver av argumentene ett tegn om gangen.