>> DAVID J. Malan: Tybiwch fod Hoffwn i weithredu rhaglen sy'n annog
y defnyddiwr ar gyfer llinyn ac yna mynd yn ei flaen i fanteisio ar eu mewnbwn,
drosi unrhyw llythrennau bach eu bod yn teipio i priflythyren.
Wel, gadewch i ni fynd yn ei flaen a weithredu'r rhaglen.
>> Gadewch i ni yn gyntaf yn cynnwys cs50.h dilyn gan gynnwys stdio.h.
Ac felly y gallwn ei defnyddio strlen, gadewch i ni gynnwys string.h.
>> Gadewch i ni ddatgan brif brif ddi-rym yn int nesaf a gadewch i ni fwrw ymlaen i ysgogi
y defnyddiwr ar gyfer llinyn.
Printf, gadewch i ni yn eu hannog ar gyfer rhai mewnbwn.
Nawr, gadewch i ni ddatgan llinyn -
byddwn yn ei alw'n s -
ac yn ei storio ynddo o ganlyniad i alw y GetString swyddogaeth llyfrgell CS50.
>> Gadewch i ni yn awr symud ymlaen i ailadrodd dros bob o'r cymeriadau yn s, gan fanteisio
unrhyw lythyrau llythrennau bach a welwn.
Ar gyfer int, fi gael 0.
Gadewch i ni hefyd yn datgan n fel rhai sy'n hafal i hyd cyfres o s fel y gallwn
ailadrodd o hyd i n, y hyd, ac ar bob
i cynyddiad iteriad.
>> Ac yna tu mewn dolen hon, gadewch i ni gwiriad cyntaf yw'r llythyr cyfredol -
y llythyr i-fed s, fel petai -
lythyr llythrennau bach.
Ai fi s braced yn fwy na neu'n hafal i lythrennau bach yn, ac mae'n llai
na neu'n hafal i z llythrennau bach -
Nawr, os ydym am i drosi llythrennau bach llythyr at priflythyren, cofio gyntaf
mewn ASCII llythrennau bach a a yn 97 ac mae priflythyren A yw 65.
Yn y cyfamser, llythrennau bach a b yn 98, ac mae priflythyren B yw 66.
>> Os byddwn yn parhau i edrych ar y patrwm, byddwn yn gweld bod y llythrennau bach
llythyrau 32 gwerthoedd bob amser yn uwch na'r llythyrau priflythyren.
Felly, os ydym am i drosi o llythrennau bach i priflythyren, dylai
ddigon, mewn gwirionedd, i dynnu 32 o fewnbwn y defnyddiwr.
Neu yn fwy cyffredinol, dim ond tynnu y gwahaniaeth rhwng llythrennau bach a a a
cyfalaf A.
>> Sut i fynegi hynny?
Wel, gadewch i ni wneud hynny mewn cod.
Printf, Dyfyniadau "% c" i argraffu cymeriad presennol, wedi'i ddilyn gan
argraffu beth bynnag sydd yn s braced i minws canlyniad o wneud llythrennau bach a
minws priflythyren A colon.
Mewn geiriau eraill, cromfachau hwn mynegiant, mae ychydig o minws mawr A,
mynd i ddychwelyd i ni yn diwedd y dydd 32.
Ond nid oes rhaid i mi gofio ei fod yn 32.
Gallaf caniatáu i'r cyfrifiadur i chyfrif i maes beth yw'r gwahaniaeth rhwng llythrennau bach
a a chyfalaf A yn.
>> Yn y cyfamser, ar ôl i mi yn gwybod y gwahaniaeth hwnnw, Gallaf dynnu rhag s
Bydd braced i, sy'n cymryd yr hyn sydd yn ôl pob tebyg llythyr llythrennau bach i
gwerth is, sef gwerth sy'n mapio ar cyfwerth priflythyren.
Gadewch i ni yn awr yn arbed, crynhoi, a rhedeg y rhaglen hon.
Gwneud manteisio dot slaes cyfalafu.
A bydd fy mewnbwn yn helo.
Ac mae gennym, helo.
>> Nawr mae fy brydlon, rhaid cyfaddef, yn ychydig yn hyll, oherwydd rydym wedi
hepgor un ychydig o argraffu.
A gadewch i ni fynd yn ôl ac ychwanegu bod.
Ar waelod y rhaglen hon, Rwy'n syml iawn, ac i raddau helaeth ar gyfer
bwrpas esthetig, yn mynd i ychwanegu printf, dyfynnwch, slaes unquote n.
Gadewch i ni resave y ffeil, ail-grynhoi, ailgynnal.
>> Gwneud manteisio, dot slaes fanteisio.
Unwaith eto, ar gyfer mewnbwn 'n annhymerus' yn rhoi "helo" ym mhob achos is ac yn awr daro Mewnbynnu,
a "helo," argraffwyd llawer mwy lân.