DAVID MALAN: Anta at vi ønsker å skrive et program som ber brukeren for en streng og deretter kapitaliserer strengen. Vel, la oss starte med noen kjente kode erklære en streng som heter s og tilordne den avkastningen Verdien av getstring. Og la oss nå fortsette å iterere over tegnene i denne strengen. Vel, hvordan du gjør det? Det viser seg at en streng er bare en sekvens av tegn, men mer på riktig måte, er en streng en rekke tegn, som betyr at vi kan bruke hakeparentes notasjon til indeksen inn en streng og få på individnivå tegn. Med andre ord, kan vi gjør følgende. For int, får jeg 0, og n blir, si, lengden av S, ved hjelp vår funksjon [? røre?] [? linje,?] i er mindre enn n i + +. Med andre ord, med denne sløyfen, vi vil iterere over alle n bokstaver i strengen s. Og i løpet av denne sløyfen, kommer jeg til å sjekk, hvis den i-ende tegn på s større enn eller lik til små bokstaver a, og den i-te tegn er mindre enn eller lik en små bokstaver c, så jeg ønsker å fortsette å kapitalisere på bokstaven. Med andre ord, jeg ønsker å skrive ut% c som plassholder og erstatning i for som plassholder s brakett jeg. Men da trenger jeg å konvertere s brakett jeg til store bokstaver. For å gjøre dette, kan jeg bare trekker uansett forskjellen er mellom små bokstaver a og kapital A. Vel, jeg faktisk husker at kapital A er 65 i ASCII, og små bokstaver en er 97. Så forskjellen er teknisk 32.. Så jeg kunne bare hardt kode 32 her. Men jeg kan ikke nødvendigvis huske disse tallene. Og dessuten, hva om de variere fra datamaskinen? Mest sannsynlig er de ikke. Men poenget er fortsatt at jeg kan fortsatt generalisere at aritmetiske uttrykk som bare uansett forskjellen mellom inn en liten en og en stor A er hva jeg ønsker å trekke seg fra denne spesielle liten bokstav. Nå, dersom bestemt bokstav er ikke små bokstaver, jeg rett og slett ønsker å skrive den ut. printf,% c som min plassholder, s brakett jeg. På bunnen av dette programmet, la oss ganske enkelt skrive ut linjeskift slik at min meldingen vises på en ny linje for seg selv. La oss nå kompilere dette programmet med make capitalize0. La oss kjøre det med capitalize0. Og la oss skrive inn et ord som hallo i små bokstaver. Jeg får tilbake HELLO med store bokstaver som forventet. Men la oss prøve en mer test, denne gangen med mitt eget navn, D-A-V-I-D, men med den første D kapitalisert, bare i tilfelle jeg rotet noe opp med det første røye. Enter, og D-A-V-I-D med store bokstaver skrives også.