1 00:00:00,000 --> 00:00:02,420 >> [Prehrávanie hudby] 2 00:00:02,420 --> 00:00:05,189 3 00:00:05,189 --> 00:00:05,980 SPEAKER: Dobre. 4 00:00:05,980 --> 00:00:08,540 Tak poďme hovoriť o ďalšie vec, ktorá je druh jedinečné C, 5 00:00:08,540 --> 00:00:10,010 čo je dátové typy a premenné. 6 00:00:10,010 --> 00:00:12,340 Keď hovorím, že jedinečné C, naozaj znamenať len v kontexte, 7 00:00:12,340 --> 00:00:14,470 Ak ste boli programátor pre naozaj dlhú dobu, 8 00:00:14,470 --> 00:00:16,270 pravdepodobne ste nie pracoval s dátovými typmi 9 00:00:16,270 --> 00:00:18,470 ak ste použili moderné programovacie jazyky. 10 00:00:18,470 --> 00:00:20,432 Moderné jazyky, ako je PHP a JavaScript 11 00:00:20,432 --> 00:00:22,640 ktorý budeme tiež vidieť trochu neskôr v priebehu, 12 00:00:22,640 --> 00:00:25,550 nemáte skutočne nutné zadať dátový typ premennej 13 00:00:25,550 --> 00:00:26,270 keď ju použijete. 14 00:00:26,270 --> 00:00:28,067 >> Práve ste deklarovať to, a začať používať. 15 00:00:28,067 --> 00:00:29,900 Ak je to celé číslo, to viem, že je to celé číslo. 16 00:00:29,900 --> 00:00:31,960 Ak je to postava, to je vie, že je to postava. 17 00:00:31,960 --> 00:00:35,320 Ak je to slovo, to vie to je reťazec, tak-zvané. 18 00:00:35,320 --> 00:00:37,300 >> Ale v C, čo je staršie jazyka, potrebujeme 19 00:00:37,300 --> 00:00:39,420 špecifikovať dáta typ každej premennej 20 00:00:39,420 --> 00:00:42,990 že vytvoríme prvýkrát že použijeme tejto premennej. 21 00:00:42,990 --> 00:00:45,030 Takže C je dodávaný s niektorými vstavaných dátových typov. 22 00:00:45,030 --> 00:00:46,972 A poďme sa zoznámiť s niektorými z nich. 23 00:00:46,972 --> 00:00:50,180 A potom potom budeme tiež hovoriť Niečo málo o niektorých typov údajov 24 00:00:50,180 --> 00:00:54,450 že písali sme pre vás, takže ich môžete použiť v CS50. 25 00:00:54,450 --> 00:00:56,130 >> Prvý z nich je int. 26 00:00:56,130 --> 00:00:59,110 Typ int dáta sú použité pre premenné že bude ukladať celočíselné hodnoty. 27 00:00:59,110 --> 00:01:03,210 So 1, 2, 3, negatívne 1, 2, 3, a tak ďalej. 28 00:01:03,210 --> 00:01:05,960 Celé čísla, čo je niečo, čo by mali mať na pamäti, pre kvízu, 29 00:01:05,960 --> 00:01:09,590 vždy zaberajú štyri bajty pamäte, čo je 32 bitov. 30 00:01:09,590 --> 00:01:11,620 Existuje osem bitov byte. 31 00:01:11,620 --> 00:01:14,470 >> Takže to znamená, že rozsah oceňuje, že celé číslo je možné uložiť 32 00:01:14,470 --> 00:01:19,130 je obmedzený tým, čo sa zmestí do 32 bitov v hodnote informácií. 33 00:01:19,130 --> 00:01:21,850 Teraz, ako to dopadá, to bolo dávno rozhodnuté 34 00:01:21,850 --> 00:01:24,310 že by sme rozdelili že rozsah 32 bitov 35 00:01:24,310 --> 00:01:26,650 do záporných čísel a kladné celé čísla, 36 00:01:26,650 --> 00:01:28,390 každá dostáva polovicu rozsahu. 37 00:01:28,390 --> 00:01:32,230 Takže rozsah hodnôt, ktoré zastupujeme s celočíselnú rozmedzí od negatívneho 2 38 00:01:32,230 --> 00:01:36,520 k 31. výkonu na 2 až 31. sila mínus 1, 39 00:01:36,520 --> 00:01:38,190 spôsobiť, že tiež potrebujú miesto pre 0. 40 00:01:38,190 --> 00:01:41,650 >> Takže v podstate polovica možných hodnôt sa zmestí do int, sú negatívne, 41 00:01:41,650 --> 00:01:42,610 a polovica je pozitívny. 42 00:01:42,610 --> 00:01:47,270 A zhruba tu, to je o negatívny 2000000000 až o pozitívnom 2 miliardy. 43 00:01:47,270 --> 00:01:50,207 Dajte alebo trvať niekoľko sto miliónov. 44 00:01:50,207 --> 00:01:52,290 Takže to je to, čo sa zmestí v celočíselné premenné. 45 00:01:52,290 --> 00:01:55,490 Teraz máme tiež niečo volal celé číslo bez znamienka. 46 00:01:55,490 --> 00:01:59,220 Teraz nepodpísané ints nie sú samostatný typ premennej. 47 00:01:59,220 --> 00:02:01,590 Skôr je nepodpísaný čo sa nazýva kvalifikácia. 48 00:02:01,590 --> 00:02:04,990 To upraví údaje typ integer mierne. 49 00:02:04,990 --> 00:02:07,850 >> A v tomto prípade to, čo nepodpísaný means-- a môžete tiež 50 00:02:07,850 --> 00:02:11,530 použiť nepodpísané iné dátové typy, integer to nie je jediný. 51 00:02:11,530 --> 00:02:15,310 Čo to v skutočnosti robí, je štvorhra pozitívne rozsah hodnôt 52 00:02:15,310 --> 00:02:19,350 že číslo môže prijať na na úkor už umožňuje 53 00:02:19,350 --> 00:02:21,140 vás vziať na záporných hodnôt. 54 00:02:21,140 --> 00:02:25,400 Takže ak máte čísla, ktoré poznáte budú mať vyššie ako 2 miliardy, ale menej 55 00:02:25,400 --> 00:02:31,280 ako 4 miliardy, pre example-- čo je o 2 až 32. power-- 56 00:02:31,280 --> 00:02:33,330 možno budete chcieť použiť unsigned int ak máte 57 00:02:33,330 --> 00:02:35,050 viete, aby vaša hodnota bude nikdy byť negatívne. 58 00:02:35,050 --> 00:02:37,216 >> Budete príležitostne používa pre nepodpísané premenné 59 00:02:37,216 --> 00:02:39,460 vo CS50, čo je dôvod, prečo som tu o ňom zmieniť. 60 00:02:39,460 --> 00:02:43,830 Ale opäť, rozsah hodnôt, ktoré ste môže predstavovať s celé číslo bez znamienka 61 00:02:43,830 --> 00:02:48,240 as t pravidelné celé číslo, sú 0 na 2 až 32. sile mínus 1, 62 00:02:48,240 --> 00:02:50,840 alebo približne 0 až 4 miliardy. 63 00:02:50,840 --> 00:02:53,730 Takže ste skutočne na dvojnásobok Pozitívne oblasť, ktorá sa zmestí, 64 00:02:53,730 --> 00:02:56,270 ale vy ste vzdali všetky záporné hodnoty. 65 00:02:56,270 --> 00:03:00,040 >> Teraz ako stranou, nepodpísaný nie je jediným kvalifikátor 66 00:03:00,040 --> 00:03:01,790 že by sme mohli vidieť premenných dátové typy. 67 00:03:01,790 --> 00:03:05,779 Tam sú tiež veci, zvané krátky a dlhý a const. 68 00:03:05,779 --> 00:03:07,820 Const uvidíme trochu niečo neskôr v kurze. 69 00:03:07,820 --> 00:03:10,830 Krátka a dlhá, my asi nebude. 70 00:03:10,830 --> 00:03:12,830 >> Ale viem, že tam sú ďalšie kvalifikátory. 71 00:03:12,830 --> 00:03:14,080 Unsigned nie je jediný. 72 00:03:14,080 --> 00:03:16,596 Ale je to jediný, my sme bude hovoriť o práve teraz. 73 00:03:16,596 --> 00:03:17,310 Takže v poriadku. 74 00:03:17,310 --> 00:03:18,393 Preto sme sa vzťahuje celé čísla. 75 00:03:18,393 --> 00:03:19,200 Čo bude ďalej? 76 00:03:19,200 --> 00:03:20,130 >> Znakov. 77 00:03:20,130 --> 00:03:23,620 Tak znaky sa používajú pre premenné že bude ukladať jednotlivé znaky. 78 00:03:23,620 --> 00:03:24,850 Char je skratka pre charakter. 79 00:03:24,850 --> 00:03:27,870 A niekedy môžete počuť ľudia vyslovujú to ako auto. 80 00:03:27,870 --> 00:03:32,020 >> Takže postavy vždy tvoria jednu byte pamäte, čo je len 8 bitov. 81 00:03:32,020 --> 00:03:35,700 Takže to znamená, že sa zmestí len hodnoty v rozsahu od negatívnej 2 82 00:03:35,700 --> 00:03:42,430 do siedmej výkonu, alebo negatívne 128, na 2 až 7. sile mínus 1, alebo 127. 83 00:03:42,430 --> 00:03:45,710 >> Vďaka ASCII, to bolo dávno rozhodol cestu 84 00:03:45,710 --> 00:03:50,805 zmapovať tie pozitívne čísla z 0-127 do rôznych postáv 85 00:03:50,805 --> 00:03:52,182 že všetky existujú na našej klávesnici. 86 00:03:52,182 --> 00:03:54,640 Takže ako uvidíme neskôr v kurz, a budete pravdepodobne 87 00:03:54,640 --> 00:03:57,700 prísť na zapamätanie na niektorej bod, kapitál A, pre example-- 88 00:03:57,700 --> 00:04:00,732 charakter kapitál je-- mapuje na číslo 65. 89 00:04:00,732 --> 00:04:02,940 A dôvod pre to je pretože to je to, čo je to 90 00:04:02,940 --> 00:04:05,490 prideľuje norme ASCII. 91 00:04:05,490 --> 00:04:07,850 >> Malé písmená A je 97. 92 00:04:07,850 --> 00:04:11,900 Znak 0, keď vás vlastne zadajte znak, nie 93 00:04:11,900 --> 00:04:13,532 predstavujúce číslo nula, je 48. 94 00:04:13,532 --> 00:04:15,240 Naučíte sa pár z nich as you go. 95 00:04:15,240 --> 00:04:17,990 A budete určite príde potrebovať je o niečo neskôr v CS50. 96 00:04:17,990 --> 00:04:20,450 97 00:04:20,450 --> 00:04:23,390 >> Budúci hlavný dátový typ plávajúcou desatinnou čiarkou. 98 00:04:23,390 --> 00:04:26,100 Takže desatinných čísel sú tiež známy ako reálne čísla. 99 00:04:26,100 --> 00:04:28,850 Sú to v podstate, že čísla majú desatinnú čiarku v nich. 100 00:04:28,850 --> 00:04:33,360 S plávajúcou desatinnou čiarkou hodnoty rovnako ako celé čísla sú tiež 101 00:04:33,360 --> 00:04:36,090 obsiahnuté 4 bajtov pamäte. 102 00:04:36,090 --> 00:04:37,580 Teraz je tu žiadny graf sem. 103 00:04:37,580 --> 00:04:40,890 Neexistuje žiadne číslo linky, pretože popisujúci rozsah plaváka 104 00:04:40,890 --> 00:04:44,550 Nie je úplne jasné, alebo intuitívne. 105 00:04:44,550 --> 00:04:47,350 >> Postačí, keď hovoríte majú 32 bitov pracovať. 106 00:04:47,350 --> 00:04:49,730 A ak máte číslo ako pi, ktorý má 107 00:04:49,730 --> 00:04:55,510 celé číslo časť 3, a plávajúce bod časti, alebo desatinné časť 0,14159, 108 00:04:55,510 --> 00:04:58,735 a tak ďalej, musíte byť schopný reprezentovať všetky to-- 109 00:04:58,735 --> 00:05:02,420 celá časť a desatinnú časť. 110 00:05:02,420 --> 00:05:04,550 >> Takže to, čo si myslíte, že by to mohlo znamenať? 111 00:05:04,550 --> 00:05:08,180 Jedna vec je, že ak od desatinnej čiarky diel dostane dlhšie a dlhšie, 112 00:05:08,180 --> 00:05:10,660 ak mám veľmi veľký celá časť, možno by som to 113 00:05:10,660 --> 00:05:13,090 môcť byť čo najpresnejšie s desatinnou časťou. 114 00:05:13,090 --> 00:05:15,280 A to je naozaj obmedzenie plaváku. 115 00:05:15,280 --> 00:05:17,229 >> Plaváky mať presnosť problém. 116 00:05:17,229 --> 00:05:19,270 Máme len 32 bitov na pracovať, tak len môžeme 117 00:05:19,270 --> 00:05:22,510 bolo natoľko presné, s našou desatinnú časť. 118 00:05:22,510 --> 00:05:27,300 Nemôžeme mať nutne desatinné časť presný k 100 alebo 200 číslic, 119 00:05:27,300 --> 00:05:29,710 pretože máme len 32 bitov pre prácu s. 120 00:05:29,710 --> 00:05:31,590 Takže to je obmedzenie plaváku. 121 00:05:31,590 --> 00:05:33,590 >> Teraz našťastie je tu iný dátový typ nazvaný 122 00:05:33,590 --> 00:05:36,530 double, čo trochu spoločnosti s týmto problémom. 123 00:05:36,530 --> 00:05:39,980 Štvorhra, rovnako ako plaváky, sú tiež používané pre ukladanie reálnych čísel, alebo s plávajúcou rádovou čiarkou 124 00:05:39,980 --> 00:05:40,840 hodnoty. 125 00:05:40,840 --> 00:05:44,340 Rozdiel je v tom, že dvojlôžkových sú double precision. 126 00:05:44,340 --> 00:05:48,177 Sa mohli vojsť 64 bitov dáta, alebo osem bajtov. 127 00:05:48,177 --> 00:05:49,010 Čo to znamená? 128 00:05:49,010 --> 00:05:51,801 No, to znamená, že môžeme byť oveľa presné s desatinnou čiarkou. 129 00:05:51,801 --> 00:05:54,830 Namiesto toho, aby pi na sedem miest možná, s plavákom, 130 00:05:54,830 --> 00:05:56,710 môžeme možno mať až 30 miest. 131 00:05:56,710 --> 00:05:59,824 Ak je to dôležité, možno budete chcieť používať dvojaký miesto plaváku. 132 00:05:59,824 --> 00:06:01,740 V podstate, ak ste Pracuješ na niečom kde 133 00:06:01,740 --> 00:06:06,540 má naozaj dlho desatinné miesto a veľa presnosť je dôležitá, 134 00:06:06,540 --> 00:06:08,630 pravdepodobne budete chcieť používajú dvojaký overfloat. 135 00:06:08,630 --> 00:06:11,250 Teraz pre väčšinu svojej práce v CS50, plavák by malo stačiť. 136 00:06:11,250 --> 00:06:15,340 Ale viem, že existujú ako dvojlôžkové spôsob, ako sa vysporiadať s trochu presnosťou 137 00:06:15,340 --> 00:06:20,980 Problém tým, že vám navyše 32 bitov pre prácu s pre vaše čísla. 138 00:06:20,980 --> 00:06:23,650 >> Teraz to nie je typ dát. 139 00:06:23,650 --> 00:06:24,390 Jedná sa o typ. 140 00:06:24,390 --> 00:06:25,340 A je to len neplatné. 141 00:06:25,340 --> 00:06:27,506 A ja hovorím o tom tu preto, že sme pravdepodobne 142 00:06:27,506 --> 00:06:29,520 Videl ju niekoľkokrát už v CS50. 143 00:06:29,520 --> 00:06:32,020 A môžete sa opýtať čo je to všetko okolo. 144 00:06:32,020 --> 00:06:33,390 >> Takže void je typ. 145 00:06:33,390 --> 00:06:34,097 To neexistuje. 146 00:06:34,097 --> 00:06:35,180 Ale nie je to typ dát. 147 00:06:35,180 --> 00:06:39,350 >> Nemôžeme vytvoriť premennú typu ruší a priradiť hodnotu. 148 00:06:39,350 --> 00:06:42,519 Ale funkcie, napríklad, môže mať návratový typ void. 149 00:06:42,519 --> 00:06:45,060 V podstate, keď vidíte funkciu ktorý má návratový typ void, 150 00:06:45,060 --> 00:06:46,970 to znamená, že nevracia hodnotu. 151 00:06:46,970 --> 00:06:49,440 Dokážete si myslíte, že spoločný funkcia, ktorú sme doteraz použitý 152 00:06:49,440 --> 00:06:52,780 V CS50, že nevracia hodnotu? 153 00:06:52,780 --> 00:06:54,700 >> Printf je jeden. 154 00:06:54,700 --> 00:06:56,820 Printf nie je v skutočnosti vrátiť vám niečo. 155 00:06:56,820 --> 00:06:59,850 Je to niečo, čo vytlačí na obrazovky, a je to v podstate 156 00:06:59,850 --> 00:07:01,650 vedľajší účinok toho, čo robí printf. 157 00:07:01,650 --> 00:07:03,620 Ale to nedáva vám hodnotu späť. 158 00:07:03,620 --> 00:07:08,419 Nemusíte zachytiť výsledok a obchod že v niektorých premennej ju použiť neskôr. 159 00:07:08,419 --> 00:07:10,710 Je to proste niečo, čo vytlačí obrazovky a máte hotovo. 160 00:07:10,710 --> 00:07:14,360 >> Preto hovoríme, že printf je funkcia neplatné. 161 00:07:14,360 --> 00:07:16,450 Vracia nič. 162 00:07:16,450 --> 00:07:18,580 >> Zoznam Obvod funkcia môže byť tiež neplatné. 163 00:07:18,580 --> 00:07:21,410 A vy ste tiež vidieť, že dosť na CS50 taky. 164 00:07:21,410 --> 00:07:22,300 Int main neplatné. 165 00:07:22,300 --> 00:07:23,260 Znamená to, že nehovorí? 166 00:07:23,260 --> 00:07:24,080 167 00:07:24,080 --> 00:07:27,220 V podstate, čo to znamená, že je Hlavné neberie žiadne parametre. 168 00:07:27,220 --> 00:07:29,520 Neexistuje žiadny argument, že dostať prešiel do hlavnej. 169 00:07:29,520 --> 00:07:32,780 Teraz neskôr budeme vidieť, že existuje spôsob, ako odovzdať argumenty do hlavnej, 170 00:07:32,780 --> 00:07:36,189 ale zatiaľ to, čo máme Videl je int main neplatné. 171 00:07:36,189 --> 00:07:37,730 Hlavné jednoducho neberie žiadne argumenty. 172 00:07:37,730 --> 00:07:40,236 A tak sme určiť, že tým, že hovorí neplatné. 173 00:07:40,236 --> 00:07:42,110 Sme len byť veľmi explicitné o tom, 174 00:07:42,110 --> 00:07:44,430 že to nebude trvať žiadne argumenty. 175 00:07:44,430 --> 00:07:47,160 >> Takže teraz, stačí povedať, že v podstate void 176 00:07:47,160 --> 00:07:50,789 mal proste slúžiť ako zástupný symbol pre vás ako myslieť ako nič. 177 00:07:50,789 --> 00:07:52,080 Nie je to naozaj niečo robiť. 178 00:07:52,080 --> 00:07:53,550 Neexistuje žiadna návratová hodnota tu. 179 00:07:53,550 --> 00:07:54,770 K dispozícii je tu žiadne parametre. 180 00:07:54,770 --> 00:07:55,709 To je neplatné. 181 00:07:55,709 --> 00:07:57,250 Je to trochu zložitejšie, než to. 182 00:07:57,250 --> 00:08:00,640 Ale to by malo stačiť pre lepšiu časť kurzu. 183 00:08:00,640 --> 00:08:05,010 A dúfajme, že teraz budete mať trochu trochu viac o poňatie toho, čo je neplatné. 184 00:08:05,010 --> 00:08:08,460 >> Takže to sú päť typov budete Stretnutie, ktoré sú vstavané do C. 185 00:08:08,460 --> 00:08:10,670 Ale v CS50 máme tiež knižnicu. 186 00:08:10,670 --> 00:08:13,550 CS50.h, ktoré si môžete zahrnúť. 187 00:08:13,550 --> 00:08:15,930 A ktorý vám poskytne s ďalšími dvoma typmi 188 00:08:15,930 --> 00:08:18,280 že budete pravdepodobne môcť pre použitie na svojich úloh, 189 00:08:18,280 --> 00:08:21,210 alebo len pracovné všeobecne programovania. 190 00:08:21,210 --> 00:08:23,030 >> Prvým z nich je bool. 191 00:08:23,030 --> 00:08:26,780 Takže Boolean dátový typ, bool, sa používa pre premenné 192 00:08:26,780 --> 00:08:28,114 ktorý bude ukladať logickú hodnotu. 193 00:08:28,114 --> 00:08:29,863 Ak ste niekedy počuli Tento termín predtým, vás 194 00:08:29,863 --> 00:08:31,960 Možno viete, že Boolean hodnota je schopný len 195 00:08:31,960 --> 00:08:34,440 drží dve rôzne odlišné hodnoty. 196 00:08:34,440 --> 00:08:35,872 True a false. 197 00:08:35,872 --> 00:08:37,580 Teraz to vyzerá celkom fundamentálne, že jo? 198 00:08:37,580 --> 00:08:40,496 Je to tak trochu prekvapením, že tento neexistuje v C, ako je to vstavané. 199 00:08:40,496 --> 00:08:42,640 A v mnohých moderných jazykoch, Samozrejme, že Booleans 200 00:08:42,640 --> 00:08:45,390 sú štandardné predvolený typ dát. 201 00:08:45,390 --> 00:08:47,192 Ale v C, sú to v skutočnosti nie je. 202 00:08:47,192 --> 00:08:48,400 Ale my sme vytvorili pre vás. 203 00:08:48,400 --> 00:08:51,910 Takže ak budete niekedy potrebovať vytvoriť premenná, ktorej typ je bool, 204 00:08:51,910 --> 00:08:55,230 len sa uistite, #include CS50.h na začiatku programu, 205 00:08:55,230 --> 00:08:57,800 a budete môcť vytvárať premenné typu BOOL. 206 00:08:57,800 --> 00:09:02,095 >> Ak zabudnete #include CS50.h, a začnete premenné typu Boolean, 207 00:09:02,095 --> 00:09:04,970 sa môžu vyskytnúť nejaké problémy keď ste kompilácii programu. 208 00:09:04,970 --> 00:09:06,490 Takže jednoducho byť na pozore, že. 209 00:09:06,490 --> 00:09:11,180 A možno si môžete len opraviť Problémy podľa libru vrátane CS50.h. 210 00:09:11,180 --> 00:09:14,590 >> Iný hlavný typ dát, ktoré sme Zabezpečíme pre Vás v knižnici CS50 211 00:09:14,590 --> 00:09:15,670 je reťazec. 212 00:09:15,670 --> 00:09:17,130 Takže to, čo je reťazec? 213 00:09:17,130 --> 00:09:18,520 Reťazce sú naozaj len slová. 214 00:09:18,520 --> 00:09:20,000 Sú zbierky postáv. 215 00:09:20,000 --> 00:09:20,640 Sú to slová. 216 00:09:20,640 --> 00:09:21,390 Sú vety. 217 00:09:21,390 --> 00:09:22,480 Sú to body. 218 00:09:22,480 --> 00:09:25,850 Môže byť celé knihy, a to aj. 219 00:09:25,850 --> 00:09:29,690 >> Veľmi krátka na veľmi dlhé rad znakov. 220 00:09:29,690 --> 00:09:34,310 Ak potrebujete použiť reťazca, Napríklad, pre uloženie slovo, 221 00:09:34,310 --> 00:09:37,609 Len nezabudnite uviesť CS50.h na začiatku svojho programu 222 00:09:37,609 --> 00:09:38,900 takže môžete použiť typ reťazec. 223 00:09:38,900 --> 00:09:43,910 A potom si môžete vytvoriť premenné ktorého dátový typ je reťazec. 224 00:09:43,910 --> 00:09:46,160 Teraz neskôr v priebehu, budeme tiež vidieť, že to je 225 00:09:46,160 --> 00:09:47,752 nie celý príbeh, a to buď. 226 00:09:47,752 --> 00:09:49,460 Budeme stretávame veci tzv štruktúry, 227 00:09:49,460 --> 00:09:54,249 ktorý vám umožní skupine, čo môže byť celé číslo a reťazec do jedného celku. 228 00:09:54,249 --> 00:09:56,290 A môžeme používať pre nejaký účel, ktorý by mohol 229 00:09:56,290 --> 00:09:57,750 hodiť neskôr v kurze. 230 00:09:57,750 --> 00:09:59,500 >> A budeme tiež naučiť o definovaných typov, 231 00:09:59,500 --> 00:10:01,720 ktorý vám umožní vytvoriť Vaše vlastné dátové typy. 232 00:10:01,720 --> 00:10:03,060 Nepotrebujeme sa obávať o tom teraz. 233 00:10:03,060 --> 00:10:04,550 Ale viem, že to je niečo na obzore, 234 00:10:04,550 --> 00:10:07,633 že je tu oveľa viac k tomuto celku Typ vec, než som ti len 235 00:10:07,633 --> 00:10:08,133 teraz. 236 00:10:08,133 --> 00:10:10,591 Takže teraz, keď sme sa dozvedeli Niečo málo o prístup k základným údajom 237 00:10:10,591 --> 00:10:14,230 typy a typy dát CS50, poďme hovoriť o tom, ako pracovať s premennými 238 00:10:14,230 --> 00:10:18,530 a vytvorte je pomocou týchto dátové typy v našich programoch. 239 00:10:18,530 --> 00:10:22,670 Ak chcete vytvoriť premennú, všetko, čo potrebujete urobiť, je dve veci. 240 00:10:22,670 --> 00:10:24,147 >> Po prvé, je potrebné, aby to typ. 241 00:10:24,147 --> 00:10:26,230 Druhá vec, ktorú potrebujete urobiť, je dať mu meno. 242 00:10:26,230 --> 00:10:28,740 Potom, čo ste urobil, že a tresol bodkočiarka na konci tejto línie, 243 00:10:28,740 --> 00:10:29,830 ste vytvorili premennú. 244 00:10:29,830 --> 00:10:32,370 >> Tak tu je dva príklady. 245 00:10:32,370 --> 00:10:35,744 Číslo Int; char letter;. 246 00:10:35,744 --> 00:10:36,660 Čo tu som to urobil? 247 00:10:36,660 --> 00:10:38,110 Vytvoril som dve premenné. 248 00:10:38,110 --> 00:10:40,190 >> Prvý z nich, premenné Volá sa číslo. 249 00:10:40,190 --> 00:10:44,830 A číslo je schopná pojať celé číslo zadajte hodnoty, pretože jeho typ je int. 250 00:10:44,830 --> 00:10:48,040 List je ďalšia premenná ktoré môžu držať znaky 251 00:10:48,040 --> 00:10:50,240 pretože jej dátový typ je char. 252 00:10:50,240 --> 00:10:51,772 >> Celkom jednoduché, nie? 253 00:10:51,772 --> 00:10:53,480 Ak sa ocitnete v situácii, keď 254 00:10:53,480 --> 00:10:56,250 musíte vytvoriť viac premenné rovnakého typu, 255 00:10:56,250 --> 00:10:58,740 stačí iba zadať je názov typu raz. 256 00:10:58,740 --> 00:11:01,600 Potom už stačí len vypísať toľko premenných tohto typu, ako budete potrebovať. 257 00:11:01,600 --> 00:11:04,230 >> Tak som mohol napríklad tu V tejto tretej riadok kódu, 258 00:11:04,230 --> 00:11:07,420 hovoria, výška int;, nový riadok. 259 00:11:07,420 --> 00:11:08,291 Šírka Int;. 260 00:11:08,291 --> 00:11:09,290 A to by fungovať tiež. 261 00:11:09,290 --> 00:11:12,039 Ja by som ešte dostať dve premenné s názvom výška a šírka, pričom každý z nich 262 00:11:12,039 --> 00:11:12,730 je celé číslo. 263 00:11:12,730 --> 00:11:16,970 Ale ja dovolené, veci syntaxe C, konsolidáciu do jediného riadku. 264 00:11:16,970 --> 00:11:20,230 Int výška, šírka; Je to rovnaká vec. 265 00:11:20,230 --> 00:11:23,900 Vytvoril som dve premenné, jeden s názvom výška jeden s názvom šírka, v oboch prípadoch 266 00:11:23,900 --> 00:11:26,730 sú schopné udržať celočíselné hodnoty typu. 267 00:11:26,730 --> 00:11:30,920 >> Rovnako tak tu, môžem vytvoriť tri plávajúce čiarkou naraz. 268 00:11:30,920 --> 00:11:33,350 Môžem snáď vytvoriť premennú volal odmocnina 2-- 269 00:11:33,350 --> 00:11:35,766 ktorý pravdepodobne bude nakoniec držať plávajúce point-- 270 00:11:35,766 --> 00:11:39,222 že zastúpenie námestí koreň 2-- odmocniny 3, a pí. 271 00:11:39,222 --> 00:11:41,180 Mohol som to urobil na tri samostatné riadky. 272 00:11:41,180 --> 00:11:47,690 Float, odmocnina 2; Float odmocninu 3; float pi; a že bude fungovať tiež. 273 00:11:47,690 --> 00:11:50,590 >> Ale na druhú stranu, ja si len konsolidovať to do jedného riadku kódu. 274 00:11:50,590 --> 00:11:54,050 Robí veci trochu kratšie, nie ako neohrabaný. 275 00:11:54,050 --> 00:11:57,259 >> Teraz všeobecne, je to dobrý návrh, aby iba deklarovať premennú, keď ju potrebujete. 276 00:11:57,259 --> 00:11:59,050 A budeme hovoriť trochu trochu viac o tom, že 277 00:11:59,050 --> 00:12:00,945 neskôr v priebehu keď budeme diskutovať o odbor. 278 00:12:00,945 --> 00:12:03,320 Takže sa nemusíte nutne vytvoriť všetky vaše premenné 279 00:12:03,320 --> 00:12:05,990 na začiatku programu, ktorý Niektorí ľudia by mohli urobiť minulosť, 280 00:12:05,990 --> 00:12:08,700 alebo to bol určite veľmi časté Pred mnohými rokmi praxe kódovania 281 00:12:08,700 --> 00:12:11,700 Pri práci s C. môžete len Chcete vytvoriť variabilný pravdu, keď 282 00:12:11,700 --> 00:12:13,140 ju budete potrebovať. 283 00:12:13,140 --> 00:12:13,640 Dobre. 284 00:12:13,640 --> 00:12:15,150 Preto sme vytvorili premenné. 285 00:12:15,150 --> 00:12:16,790 Ako by sme ich používať? 286 00:12:16,790 --> 00:12:18,650 Potom, čo sme vyhlásiť variabilné, nepotrebujeme 287 00:12:18,650 --> 00:12:21,237 určiť typ dát tej premenné ešte. 288 00:12:21,237 --> 00:12:24,070 V skutočnosti, ak tak urobíte, môžete skončiť s niektorými podivnými dôsledkami 289 00:12:24,070 --> 00:12:25,490 že budeme trochu zakryť teraz. 290 00:12:25,490 --> 00:12:27,365 Ale stačí povedať, divné veci idú 291 00:12:27,365 --> 00:12:30,740 spustiť deje Ak omylom znovu deklarovať premenné s rovnakým názvom 292 00:12:30,740 --> 00:12:32,210 znova a znova. 293 00:12:32,210 --> 00:12:33,882 >> Tak tu mám štyri riadky kódu. 294 00:12:33,882 --> 00:12:36,090 A mám pár Komentáre Momentálne tu len naznačujú, 295 00:12:36,090 --> 00:12:37,840 čo sa deje na Každá linka len pomôcť 296 00:12:37,840 --> 00:12:40,520 dostanete nachádza v tom, čo sa deje. 297 00:12:40,520 --> 00:12:41,520 Takže int číslo;. 298 00:12:41,520 --> 00:12:42,520 Ste videli, že skôr. 299 00:12:42,520 --> 00:12:44,000 To je deklarácia premenných. 300 00:12:44,000 --> 00:12:46,670 >> Ja som teraz vytvorili premennú volané číslo, ktoré je 301 00:12:46,670 --> 00:12:48,970 schopné udržať hodnoty integer typu. 302 00:12:48,970 --> 00:12:50,210 Ja som deklaroval to. 303 00:12:50,210 --> 00:12:53,770 >> Ďalší riadok som priradenie hodnota, ktorá má číslo. 304 00:12:53,770 --> 00:12:54,992 Číslo sa rovná 17. 305 00:12:54,992 --> 00:12:55,950 Čo sa tam deje? 306 00:12:55,950 --> 00:12:58,880 Dávam číslo 17 vnútri tejto premennej. 307 00:12:58,880 --> 00:13:02,760 >> Takže keď som niekedy potom vytlačiť čo obsah čísla sú neskôr, 308 00:13:02,760 --> 00:13:04,030 oni mi, poviem, že je to 17. 309 00:13:04,030 --> 00:13:07,030 Takže som deklaroval premennú, a potom som pridelený to. 310 00:13:07,030 --> 00:13:10,570 >> Môžeme proces opakovať opäť s char písmenom;. 311 00:13:10,570 --> 00:13:11,640 To je vyhlásenie. 312 00:13:11,640 --> 00:13:14,010 List sa rovná kapitál H. To je úloha. 313 00:13:14,010 --> 00:13:16,030 Celkom jednoduché, taky. 314 00:13:16,030 --> 00:13:18,319 >> Teraz tento proces môže Zdá sa to tak hlúpe. 315 00:13:18,319 --> 00:13:20,110 Prečo to robíme v dvoch riadkov kódu? 316 00:13:20,110 --> 00:13:21,401 Existuje lepší spôsob, ako to urobiť? 317 00:13:21,401 --> 00:13:22,250 V skutočnosti, tam je. 318 00:13:22,250 --> 00:13:24,375 Niekedy môžete vidieť Tento tzv inicializáciu. 319 00:13:24,375 --> 00:13:28,446 Je to, keď je deklarovať premennú a priradenie hodnoty v rovnakom čase. 320 00:13:28,446 --> 00:13:30,320 To je vlastne celkom bežná vec robiť. 321 00:13:30,320 --> 00:13:32,870 Keď vytvoríte premennú, zvyčajne Chcem to mať niektoré základné hodnotu. 322 00:13:32,870 --> 00:13:34,330 Aj keď je to 0 alebo tak niečo. 323 00:13:34,330 --> 00:13:36,180 Iba tí, že to dať hodnotu. 324 00:13:36,180 --> 00:13:38,360 >> Môžete inicializovať premenné. 325 00:13:38,360 --> 00:13:42,320 Int číslo sa rovná 17, je rovnaký, ako prvé dva riadky kódu up vyššie. 326 00:13:42,320 --> 00:13:46,829 Char letter rovná h je rovnaká ako Tretí a štvrtý riadkov kódu vyššie. 327 00:13:46,829 --> 00:13:49,620 Najdôležitejšie stánok s jedlom tu keď sme deklarovaní a priraďovanie 328 00:13:49,620 --> 00:13:51,740 premenné je potom, čo sme vyhlásený za to, oznámenie 329 00:13:51,740 --> 00:13:53,700 Nie som pomocou typ dát znova. 330 00:13:53,700 --> 00:13:57,916 Nehovorím, že počet int sa rovná 17 na druhý riadok kódu, napríklad. 331 00:13:57,916 --> 00:13:59,290 Len hovorím, že číslo sa rovná 17. 332 00:13:59,290 --> 00:14:02,537 >> Opäť platí, že re-deklarovaní premennej po už ste vyhlásil, že môže viesť 333 00:14:02,537 --> 00:14:03,620 na nejaké podivné dôsledok. 334 00:14:03,620 --> 00:14:05,950 Tak len pozor na to. 335 00:14:05,950 --> 00:14:06,660 >> Som Doug Lloyd. 336 00:14:06,660 --> 00:14:08,870 A to je CS50. 337 00:14:08,870 --> 00:14:10,499