DAVID Malan: Předpokládejme, že bychom chtěli napsat program, který vyzve uživatele na řetězec a pak zmobilizuje že řetězec. Dobře, pojďme začít s některými seznámit Kód deklarovat řetězec s názvem s a přiřazením návrat hodnota GetString. A pojďme se nyní přistoupit k iteraci znaky v tomto řetězci. No, jak to udělat, že? Ukazuje se, že řetězec je jen posloupnost znaků, ale správně, řetězec je pole znaky, což znamená, že můžeme použít hranatá závorka zápis do rejstříku do řetězec a dostat na individuální znaky. Jinými slovy, můžeme postupujte podle následujících pokynů. Pro int, i dostane 0, a n dostane, říci, délku s použitím naše funkce [? míchat?] [? linka,?] i je menší než n i + +. Jinými slovy, s této smyčky, se bude iterovat přes všechny n dopisy v řetězci s.. A v rámci této smyčky, budu zkontrolujte, je-li i-tý znak v s. větší než nebo rovnající se malá, a i-tý znak je menší než nebo rovná malá písmena c, pak chci, aby pokračovat využít ten dopis. Jinými slovy, chci tisknout% c jako zástupný symbol a náhrada v pro této zástupný symbol s držák i. Ale pak jsem třeba převést s držák i na velká písmena. Chcete-li to provést, mohu jednoduše odečíst bez ohledu na rozdíl mezi malá a kapitálu A. No, myslím, vlastně si vzpomínám, že kapitál je 65 v ASCII, a velká 97. Takže rozdíl je technicky 32. Tak jsem mohl jen pevný kód 32 zde. Ale já nemusí nutně Pamatuji si ty čísla. A navíc, co když lišit v závislosti na počítači? S největší pravděpodobností to nejsou. Faktem ale zůstává, že mohu ještě zobecnit, že aritmetický výraz , jak jen to bez ohledu na rozdíl mezi malými písmeny A a kapitálu je to, co chci odečíst pryč od to zejména malé písmeno. Nyní, pokud tento konkrétní dopis není malá, jsem prostě chcete vytisknout. printf,% c jako můj zástupný symbol, s držák i. Ve spodní části tohoto programu, pojďme jednoduše vytisknout nový řádek, takže my se zobrazí výzva na nový Řada jeho vlastní. Pojďme se nyní zkompilovat tento program s make capitalize0. Pojďme spustit s capitalize0. A pojďme napište slovo, jako ahoj ve všech malými písmeny. Já se vrátím HELLO velkými písmeny jak se očekávalo. Ale pojďme zkusit ještě jeden test, tentokrát s mým vlastním jménem, ​​D--V-I-D, ale s první D aktivovány, pouze v Případ jsem zpackal něco nahoru s tou první char. Zadejte, a D--V-I-D velkými písmeny se vytiskne stejně.