[Powered by Google Translate] JOE MCCORMICK: Deri tani, ne do të flasim rreth variablave.
Variablat në shkenca kompjuterike janë një mënyrë për të ruajtur një vlerë.
Tani, çfarë dhe se si ne dyqan se
vlera nuk është shumë e rëndësishme.
Ne mund të kemi një vlerë që është një fjalë, që mund të
të ruhen si një varg.
Ose ne mund të kemi diçka që është një karakter,
si një letër.
Dhe që do të ruhen si një char.
Ne mund të kemi një numër, si njërit apo 12, që do të jetë
ruhet si një numër të plotë apo Int.
Pastaj, ne kemi gjëra të ndryshme si një float, të cilat mund të ruajë
gjëra të tilla si 1,01 ose 111,13.
Këto vlera janë quajtur gjithmonë të ndryshueshme.
Që do të thotë se në qoftë se ne të ruajtur numër një në një numër të plotë në
në krye të një programi më vonë, ne mund të ndryshojë atë numër të
të jetë tre ose shtatë.
Tani, një ndryshore lokale është ajo që ju do të hasni në mënyrë tipike,
kur ekzekutimin e një funksion.
Pra, le të thonë se ju jeni brenda funksionit tuaj kryesor.
Dhe ju doni të krijoni një num ndryshueshme quajtur.
Dhe ne do të ruajë një numër të plotë në të.
Pra, ne mund të themi diçka si int num = 3.
Tani, ju shkoni atje.
Ju keni një ndryshore lokale.
Tani, kjo është e ndryshueshme mund të ndryshohet më vonë në kryesore
funksion, duke thënë diçka si num = num = 6 ose 7.
Por ndryshueshme juaj është mbërthyer brenda
Shtrirja e këtij funksioni.
Shtrirja dhe zakonisht fillon me mbajtëse kaçurrel më së
fillimi i kryesor dhe përfundon me mbajtëse kaçurrel atë
mbyll funksionin kryesor.
Dhe kjo është e ndryshueshme lokale është mbërthyer tani në këtë fushë.
Kështu që nuk mund të arrihen në një tjetër funksion,
jashtë funksionit kryesor.
Dhe një herë Funksioni kryesor përfundon ekzekutimin e saj dhe
kthimit, ky lokal num ndryshueshme quajtur është zhdukur.
Pra, në kontrast me variablat lokale, ne kemi diçka
quajtur variabla globale.
Tani, një ndryshore globale është shpallur në krye të
programi dhe mund të arrihen kudo në program.
Pra, le të thonë se ju deklaruar një ndryshore globale në krye të
programi juaj, të quajtur test.
Tani, kjo është e ndryshueshme mund të arrihen
kudo në program.
Ju mund të hyni në atë në funksion tuaj kryesore ose në një funksion
më poshtë se.
Por në qoftë se ju ndonjëherë të përpiqet të krijojë një ndryshore lokale në një nga
këto funksione, me të njëjtin emër si
Testi, ka një konflikt.
Sepse ju nuk e dini që ndryshueshme ju doni të përdorni.
A doni të përdorni testin globale,
deklaruar në programin e lartë?
Apo ju doni të përdorni testin lokale ndryshueshme që
jeni duke u përpjekur për të krijuar brenda këtij funksioni?
Tani, kjo është një nga arsyet pse ne nuk duan të
vetëm përdorni variabla globale lirisht.
Ka diçka që quhet cluttering hapësirë ​​emrin.
Edhe nëse ju nuk do të thotë për të, ju mund të aksidentalisht krijuar një
variabël lokale, më vonë në program, me të njëjtën
Emri si ndryshore globale.
Dhe kjo nuk do të përbëjë një problem të madh kur ju jeni duke punuar në
vogël 10, 20, 30-line programeve.
Pasi të keni deri në mijëra e linjave të kodit, ju nuk do të
mbani mend saktësisht se çfarë ju keni ruajtur për variable globale.
Pra, një gjë të marrin në konsideratë kur duke përdorur lokale dhe globale
variablave është që të mendoni rreth fushëveprimit të tyre.
Tani, qëllimi i referohet ku këto variabla mund të përdoren në
programi.
Pra, një ndryshore globale ka atë që quhet qëllimin global,
do të thotë se ajo mund të përdoret kudo në program.
Pasi të keni nisja këtë ndryshore, ajo mund të përdoret në
çdo funksion, qoftë ajo të jetë funksioni kryesor ose një
10 funksion funksionet poshtë, të quajtur foo10.
Kjo nuk ka rëndësi se ku ju përdorni atë.
Por një ndryshore lokale ka fushë të veçantë.
Dhe fushëveprimi i këtij variablit lokal është përcaktuar nga
ku është initialized.
Tani, qëllimi është përcaktuar në mënyrë tipike nga hapja
mbajtëse e funksionit që variabli është deklaruar në, deri në
shtrëngoj mbylljen e atij funksioni.
Pra, le të thonë se ju jeni në funksion kryesor.
Dhe ju e krijoni një ndryshore.
Por tani, në kuadër të këtij funksioni kryesor, që ne e quajmë një tjetër
funksionojnë foo.
Në foo funksion, ne nuk mund të telefononi variabli ne vetëm
krijuar në funksion kryesor, sepse ajo nuk është në fushë.
Kjo variabël është vetëm në kuadër brenda funksionit kryesor.
Kështu që ne mund ta përdorin atë më tej, në kuadër të funksionit kryesor, por
jo brenda një funksion që quhet nga funksioni kryesor.
Pra, si rafte dhe tog, variabla globale janë
ruhen në një pjesë të caktuar të kujtesës.
Tani, kjo pjesë e kujtesës varet nga sistemi që
ju jeni duke përdorur.
Variablat globale kanë dy vende të veçanta që ata janë
ruajtur, një për variablat initialized globale, të tilla si
ju kishte deklaruar testin int = 5, në krye të programit tuaj.
Dhe zona tjetër është për variablat unitialized globale,
në qoftë se ju vetëm tha, test int, në krye të programit tuaj dhe
ishte duke shkuar për të vendosur variablave provë
më vonë në program.
Kështu që tani unë jam do të flasim për diçka të quajtur # define,
cila është një mënyrë që të japë një emër simbolik tek një konstante.
Dhe këtu kemi një shembull të një programi C që llogarit
zona e rrethit.
Dhe në krye të programit, ne do të bëjmë diçka që thotë se
# Define pi 3,14159.
# Define nuk teknikisht të krijojë një ndryshore globale.
Përkundrazi, ajo tregon preprocessor përpiluesit për të
gjeni dhe të zëvendësojë të gjitha instancat e pi me
3,14159 para hartimit.
Megjithatë, ai bëhet një teknikë e dobishme për shpalljen
konstanta, për përdorim në të gjithë programin.
Tani, duke kërkuar në funksion zonë, ajo merr në një noton
RAD dhe thjesht e kthen zonën e një rrethi me atë
rrezja ose pi r katror, ​​ose herë pi rad herë rad.
Dhe ky është vendi ku # define luan një rol kyç.
Sepse përpiluesit në thelb do të zëvendësojë atë pi
Simboli me numrin 3,14159.
Dhe kështu që ne nuk duhet të shkruani se mbi dhe mbi përsëri.
Dhe më vonë, në qoftë se ne vendosim për të përdorur një shifra më e pi, le të
thonë 3.1415926, ne vetëm mund të shtoj se në krye të
Programi dhe nuk do të ketë për të ndryshuar atë,
më vonë në program.
Kjo është një përdorim të mirë të përcaktojë #.
Ne nuk duam të ruajtur pi si një ndryshore globale sepse ajo
mund të ndryshojë më vonë në program.
Dhe ne e dimë pi nuk ndryshon.
Kjo është një konstante.
Pra, kjo përfundon temën tonë të variablave globale.
Pra, sot kemi biseduar në lidhje me dallimin në mes të lokale dhe
variabla globale, kur për përdorimin e tyre, në varësi të tyre
Shtrirja dhe pse jo për të përdorur ndryshoret globale sipas dëshirës
për shkak të cluttering e hapësirës së emrit.
Unë jam Joe McCormick.
Dhe kjo është CS50.