[Powered by Google Translate] JOE MCCORMICK: Most fogunk beszélni változók. Változók a számítástechnikában egy módja annak, hogy tárolja az értéket. Nos, mit és hogyan tároljuk, hogy a érték nem túl fontos. Mi lehet olyan érték, amely egy szó, amely kell tárolni, mint egy húr. Vagy mi lehetett volna valamit, ami egy karaktert, mint a levél a. És ez kellene tárolni, mint egy char. Jelenleg is számos, mint egy vagy 12, az lenne tárolt egy egész szám vagy egy int. Aztán, már különböző dolgokat, mint egy úszó, amely képes tárolni dolgok, mint a 1,01, illetve 111,13. Ezek az értékek mindig hívják változékony. Azt jelenti, hogy ha a tárolt szám egy olyan egész szám a a tetején a program később tudtuk változtatni szám három vagy hét. Most, egy lokális változó mit fogsz jellemzően találkozás, végrehajtása során a funkciót. Tehát mondjuk te belül a fő funkciója. És azt akarod, hogy hozzon létre egy változót nevű tel. És mi tároljuk integer benne. Így azt mondhatjuk, valami hasonlót int num = 3. Nos, tessék. Van egy helyi változót. Nos, ezt a változót lehet változtatni később a fő funkciót, mondván valami ilyesmit num = 6 vagy num = 7. De a változó beragadt a hatálya alá ezt a funkciót. És a hatálya általában kezdődik a kapcsos zárójel a elején a fő-és végződik a kapcsos zárójel, hogy zárja ki a fő funkciója. És ez a lokális változó most megakadt ezen alkalmazási körön belül. Így már nem lehet hozzáférni egy másik funkció, kívül a fő funkció. És ha egyszer a fő funkciója befejezi a végrehajtás és a visszatér, ez a lokális változó nevű tel elment. Tehát ellentétben a lokális változók, van valami úgynevezett globális változók. Most, egy globális változó nyilvánított tetején a program elérhető bárhol a programban. Tehát mondjuk bejelentett egy globális változót a tetején a program, az úgynevezett teszt. Nos, ezt a változót lehetne elérni, bárhol a programban. Lehet elérheti a fő funkció vagy funkció alá. De ha valaha is megpróbál létrehozni egy helyi változót az egyik ezeket a funkciókat, a neve megegyezik vizsgálat, van egy konfliktus. Mert nem tudja, hogy melyik változót szeretnénk használni. Szeretné használni a globális vizsgálat nyilvánította a csúcson program? Vagy szeretnéd használni a helyi változó teszt akarsz létrehozni ezen a funkciót? Nos, ez az egyik oka annak, hogy nem akarjuk, hogy csak használja globális változók szabadon. Van valami, amit az úgynevezett túlzsúfoltság a név tér. Akkor is, ha nem akarok, akkor véletlenül létre lokális változó, később a programban, az azonos név, mint a globális változót. És ez nem jelent nagy problémát, ha éppen dolgozik kicsi 10, 20, 30-vonal programok. Ha már akár több ezer sornyi kódot, akkor nem fog emlékszem, hogy pontosan mit tárolt a globális változót. Tehát az egyik dolog, hogy fontolja meg, amikor a helyi és globális változók gondolkodni annak hatályát. Most hatálya vonatkozik, ahol ezeket a változókat lehet használni a programot. Tehát egy globális változó az úgynevezett globális hatókörű, értelmezni, hogy fel lehet használni bárhol a programban. Ha inicializálni a változót, akkor lehet használni a minden funkció, függetlenül attól, hogy a fő funkciója, vagy funkció 10 funkció le, az úgynevezett foo10. Nem számít, hol használjuk. De egy helyi változó konkrét hatályáról. És hatályát helyi változó határozza meg ahol inicializáljuk. Most, a hatály jellemzően határozza meg a nyitó zárójel a funkció, hogy a változó bejelentett, amíg záró zárójel e funkciót. Tehát mondjuk te vagy a fő funkciója. És létrehoz egy változót. De most, ezen belül a fő funkciója, hívjuk másik function ize. A function ize, nem tudjuk hívni a változó már csak létre a fő funkciója, mert ez nem a hatályát. Ez a változó csak a hatálya alá tartozó a fő funkciója. Így tudtuk használni tovább, a fő funkciója, de a belül nem egy függvény, hogy hívják a fő funkciója. Szóval, mint a stack és a heap globális változók tárolt egy bizonyos részében a memória. Nos, ez a része a memória függ a rendszer Ön használ. A globális változók esetében két különböző helyeken, hogy ők tárolt, egy a inicializált globális változók, mint mintha Ön kijelentette, int teszt = 5, a tetején a program. A másik terület a unitialized globális változók, ha csak azt mondta, int teszt, a tetején a program, és volt, hogy állítsa be a vizsgálati változók később a programban. Tehát most fogok beszélni valami úgynevezett # define, amely egy módja annak, hogy egy szimbolikus nevet egy konstans. És itt van egy példa egy C program kiszámolja a terület a kör. És a tetején a program fogjuk tenni valamit, hogy azt mondja # Define pi 3,14159. # Define technikailag nem hoz létre egy globális változót. Inkább azt mondja a fordító által előfeldolgozó a keresés és csere minden esetben a pi-vel 3,14159 fordítás előtt. Mindazonáltal, ez lesz hasznos technika nyilvánító állandók, használata az egész programot. Most néztem a terület funkciót, akkor vesz egy úszó rad, és egyszerűen visszaadja a területet a kör, amely sugár vagy pi r kockás, vagy pi szer rad alkalommal rad. És ez az, ahol a # define kulcsfontosságú szerepet játszik. Mivel a fordító alapvetően helyettesíti, hogy a PI szimbólum a szám 3,14159. És így nem kell írni, hogy újra és újra. És később, ha úgy döntünk, hogy egy több számjegy a pi, hadd mondjuk 3.1415926, mi is csak hozzá, hogy a tetején a programot, és nem kell megváltoztatni, később a programban. Ez egy jó felhasználása # define. Nem akarjuk tárolni pi globális változót, mert megváltozhat később a program. És tudjuk, hogy a PI nem változik. Ez egy állandó. Szóval ez a pakolások fel témánk a globális változók. Szóval ma beszéltünk a különbség a helyi és globális változók, hogy mikor kell használni őket, attól függően, hogy hatálya alá, és miért nem használja globális változókat tetszés mert a túlzsúfoltság a név tér. Én vagyok Joe McCormick. És ez CS50.