David J. Malan: Tarkime, kad aš norėčiau įgyvendinti programą, kuri verčia styginių vartotojas ir tada pajamos pasinaudoti savo indėlį, Konvertavimas bet kokį mažąsias raides kad jie tipo su didžiosiomis raidėmis. Na, eikime į priekį ir šiai programai įgyvendinti. Tegul pirmasis apima cs50.h po iki pat stdio.h. Ir todėl, kad mes galime naudoti strlen, tegul apima string.h. Tegul kitas paskelbti pagrindinį kaip int main negaliojančiu ir tegul dabar pereiti prie greitai styginių vartotojas. Printf, galime paskatinti juos kai įėjimo. Dabar galime paskelbti eilutę - mes tai vadiname s - ir laikyti jį, iš kurios skambinama rezultatą CS50 biblioteka funkcija GetString. Leiskite dabar pereiti prie kartoti per kiekvieną iš s, išnaudodamas simbolių bet mažosiomis raidėmis, kad mes matome. Dėl int, gaunu 0. Tegul deklaruoja n prilygino string ilgis s, kad galėtume kartoti nuo i iki n, ilgis s, ir kiekvienas iteracija prieaugis i. Ir tada viduje šios linijos, tegul Pirmasis patikrinimas yra dabartinis raštas - i-asis laiškas s, taip sakant - mažoji raidė. Jei ai laikiklis i yra didesnis nei arba lygus mažosiomis raidėmis, o tai yra mažiau nei arba lygus mažosiomis z - Dabar, jei mes norime konvertuoti mažosiomis laišką didžiąsias, prisimenu, pirma, kad ASCII mažosiomis raidėmis 97 ir didžiosiomis raidėmis 65. Tuo tarpu mažoji b yra 98, ir didžiosiomis raidėmis B 66. Jei mes ir toliau pažvelgti į tą modelį, matysime, kad mažoji raidės yra visada 32 vertės didesnės nei didžiosiomis raidėmis. Taigi, jei norime konvertuoti iš mažosios didžiosiomis, ji turėtų pakanka, tikrai, atimti 32 iš vartotojo įvesties. Arba apskritai, tiesiog atimti, kad skirtumas tarp mažosiomis a ir a kapitalas A. Kaip išreikšti tai? Na, galime daryti kodą. Printf, citata, citatos "% c" spausdinti dabartinis simbolis, o po to spausdinimo visada kas s laikiklis i minus daryti mažosiomis rezultatas atėmus didžiąsias kabliataškiu. Kitaip tariant, tai daug įterptinių sakinių išraiška, tiek minusas didelis, yra ketina grįžti į mums dienos 32 pabaigoje. Bet aš neturiu prisiminti kad tai 32. Galiu leisti kompiuteris išsiaiškinti kas tarp mažosiomis skirtumas ir kapitalas yra. Tuo tarpu, kai aš žinau, kad skirtumas, Galiu atimti iš s laikiklis i, kurios vyks kas tikriausiai mažoji raidė į mažesnė vertė, ty vertė, kad žemėlapiai ant iš didžiosios ekvivalentu. Leiskite dabar įrašyti, kaupti, ir paleisti šią programą. Padaryti pasinaudoti dot velniop kapitalizuojamos. Ir mano indėlis bus labas. Ir mes turime, labas. Dabar mano raginimas, žinoma, yra tiek negraži, nes mes praleisti vieną tiek spauda. Ir tegul grįžti ir pridėti, kad. Pačioje apačioje šią programą, Aš labai paprastai, ir daugiausia dėl estetinis tikslas, ketiname pridėti printf, citata, citatos Backslash n. Leiskite išsaugokite šį failą, perkompiliuoti, pakartotas. Padaryti kapitalizuoti, taškas velniop pasinaudoti. Vėlgi, įvesties aš suteikti "labas" visose mažosiomis ir dabar paspausti Enter ir "labas", daug švariai spausdinami.