1 00:00:00,000 --> 00:00:02,420 >> [Predvaja glasba] 2 00:00:02,420 --> 00:00:05,189 3 00:00:05,189 --> 00:00:05,980 SPEAKER: V redu. 4 00:00:05,980 --> 00:00:08,540 Torej, kaj je govoril o drugi stvar, ki je nekako edinstven C, 5 00:00:08,540 --> 00:00:10,010 ki je tipi podatkov in spremenljivke. 6 00:00:10,010 --> 00:00:12,340 Ko rečem edinstvena C, res pomenilo le v kontekstu, 7 00:00:12,340 --> 00:00:14,470 če ste bili programer za zelo dolgo časa, 8 00:00:14,470 --> 00:00:16,270 ste verjetno ne delal s podatkovnimi tipi 9 00:00:16,270 --> 00:00:18,470 Če ste uporabili moderno programski jeziki. 10 00:00:18,470 --> 00:00:20,432 Sodobni jezike, kot PHP in JavaScript, 11 00:00:20,432 --> 00:00:22,640 ki smo ga videli tudi malo Kasneje v teku, 12 00:00:22,640 --> 00:00:25,550 ne boste dejansko morali določiti podatkovni tip spremenljivke 13 00:00:25,550 --> 00:00:26,270 ko jo uporabljate. 14 00:00:26,270 --> 00:00:28,067 >> Pravkar ste jo razglaša in začnete uporabljati. 15 00:00:28,067 --> 00:00:29,900 Če je celo število, ga Vem, da je celo število. 16 00:00:29,900 --> 00:00:31,960 Če je to znak, da je ve, da je to znak. 17 00:00:31,960 --> 00:00:35,320 Če je beseda, ve je niz, ti. 18 00:00:35,320 --> 00:00:37,300 >> Toda v C, ki je starejši jezik, moramo 19 00:00:37,300 --> 00:00:39,420 navesti podatke Tip vsake spremenljivke 20 00:00:39,420 --> 00:00:42,990 da ustvarimo prvi čas da bomo uporabili to spremenljivko. 21 00:00:42,990 --> 00:00:45,030 Torej, C prihaja z nekaterimi vgrajene podatkovne tipe. 22 00:00:45,030 --> 00:00:46,972 In naj se navadim z nekaterimi od teh. 23 00:00:46,972 --> 00:00:50,180 In potem kasneje bomo tudi talk malo o nekaterih podatkovnih tipov 24 00:00:50,180 --> 00:00:54,450 ki smo jih napisal za vas, tako da jih lahko uporabite v CS50. 25 00:00:54,450 --> 00:00:56,130 >> Prvi je int. 26 00:00:56,130 --> 00:00:59,110 Tip int podatkov se uporablja za spremenljivke da bo shranjevanje integer vrednosti. 27 00:00:59,110 --> 00:01:03,210 Torej 1, 2, 3, negativni 1, 2, 3, in tako naprej. 28 00:01:03,210 --> 00:01:05,960 Cela števila, ki je nekaj, kar morajo voditi v mislih za kviz, 29 00:01:05,960 --> 00:01:09,590 vedno traja štiri bajte pomnilnika, kar je 32 bitov. 30 00:01:09,590 --> 00:01:11,620 Obstaja osem bitov v bajt. 31 00:01:11,620 --> 00:01:14,470 >> To torej pomeni, da na območju Vrednosti, ki lahko celo shranjevanje 32 00:01:14,470 --> 00:01:19,130 je omejena s tem, kar lahko v fit 32 bitov vrednosti informacij. 33 00:01:19,130 --> 00:01:21,850 Zdaj, ko se je izkazalo, je bilo že davno odločil, 34 00:01:21,850 --> 00:01:24,310 da bi si razdelili da je razpon 32 bitov 35 00:01:24,310 --> 00:01:26,650 v negativnih števil in pozitivna cela števila, 36 00:01:26,650 --> 00:01:28,390 vsak dobili polovico območju. 37 00:01:28,390 --> 00:01:32,230 Torej razponu vrednosti, ki jih zastopamo z integer razponu od negativnega 2 38 00:01:32,230 --> 00:01:36,520 do 31. močjo do 2 do 31. moč minus 1, 39 00:01:36,520 --> 00:01:38,190 povzroči potrebujete tudi spot za 0. 40 00:01:38,190 --> 00:01:41,650 >> Torej v bistvu polovica možnih vrednosti lahko fit v notr so negativni, 41 00:01:41,650 --> 00:01:42,610 in pol so pozitivni. 42 00:01:42,610 --> 00:01:47,270 In približno tod gre negativna 2 milijardi za okoli pozitivne 2 milijardi. 43 00:01:47,270 --> 00:01:50,207 Dati ali vzeti nekaj sto milijonov. 44 00:01:50,207 --> 00:01:52,290 Torej, to je tisto, kar ste lahko fit v celoštevilski spremenljivki. 45 00:01:52,290 --> 00:01:55,490 Zdaj imamo tudi nekaj imenovano nepodpisani celo število. 46 00:01:55,490 --> 00:01:59,220 Zdaj nepodpisane Ints niso ločen tip spremenljivke. 47 00:01:59,220 --> 00:02:01,590 Namesto, nepodpisani je kar se imenuje kvalifikant. 48 00:02:01,590 --> 00:02:04,990 To spreminja podatke tip celo nekoliko. 49 00:02:04,990 --> 00:02:07,850 >> In v tem primeru, kaj nepodpisana means-- in lahko tudi 50 00:02:07,850 --> 00:02:11,530 uporabite nepodpisane druge podatkovne tipe, celo ni edini. 51 00:02:11,530 --> 00:02:15,310 Kaj to dejansko počne, je v dvojicah pozitivni razpon vrednosti 52 00:02:15,310 --> 00:02:19,350 da lahko celo prevzamejo pri odhodek ni daljše omogoča 53 00:02:19,350 --> 00:02:21,140 ste, da na negativne vrednosti. 54 00:02:21,140 --> 00:02:25,400 Torej, če imate številke, ki jih poznate boste dobili višje kot 2 milijardi, vendar manj 55 00:02:25,400 --> 00:02:31,280 kot 4 milijarde, za example-- ki je od 2 do 32. power-- 56 00:02:31,280 --> 00:02:33,330 boste morda želeli uporabiti nepodpisan int, če vas 57 00:02:33,330 --> 00:02:35,050 poznate svoje vrednost nikoli ne bo negativna. 58 00:02:35,050 --> 00:02:37,216 >> Boste občasno imeli uporablja za nepodpisane spremenljivk 59 00:02:37,216 --> 00:02:39,460 v CS50, kar je razlog, zakaj sem ga omenil tukaj. 60 00:02:39,460 --> 00:02:43,830 Ampak spet, razpon vrednosti, ki jih lahko predstavlja s celo število brez predznaka 61 00:02:43,830 --> 00:02:48,240 kot t redno celo število, so 0 na 2 do 32. moč minus 1, 62 00:02:48,240 --> 00:02:50,840 ali približno od 0 do 4 milijarde. 63 00:02:50,840 --> 00:02:53,730 Torej, da ste dejansko podvojila pozitivno območje, ki ga lahko fit, 64 00:02:53,730 --> 00:02:56,270 ampak si dal gor vse negativne vrednosti. 65 00:02:56,270 --> 00:03:00,040 >> Zdaj kot prahi, nepodpisani ni edini kvalifikant 66 00:03:00,040 --> 00:03:01,790 da lahko vidimo za spremenljivka vrste podatkov. 67 00:03:01,790 --> 00:03:05,779 Obstajajo tudi stvari imenovane kratko in dolgo in const. 68 00:03:05,779 --> 00:03:07,820 Const bomo videli malo malce kasneje v teku. 69 00:03:07,820 --> 00:03:10,830 Kratko in dolgo, mi verjetno ne bo. 70 00:03:10,830 --> 00:03:12,830 >> Ampak samo vem, da obstaja drugi kvalifikanti. 71 00:03:12,830 --> 00:03:14,080 Nepodpisani ni edini. 72 00:03:14,080 --> 00:03:16,596 Ampak to je samo ena smo bomo govorili o tem zdaj. 73 00:03:16,596 --> 00:03:17,310 Torej je vse v redu. 74 00:03:17,310 --> 00:03:18,393 Torej smo pokrita cela. 75 00:03:18,393 --> 00:03:19,200 Kaj je naslednje? 76 00:03:19,200 --> 00:03:20,130 >> Znakov. 77 00:03:20,130 --> 00:03:23,620 Torej so črke uporablja za spremenljivke da bo shranite posamezne znake. 78 00:03:23,620 --> 00:03:24,850 Char je okrajšava za značaj. 79 00:03:24,850 --> 00:03:27,870 In včasih boste morda slišali ljudje izgovarjajo kot avto. 80 00:03:27,870 --> 00:03:32,020 >> Torej znaki vedno traja eno bajt pomnilnika, ki je le 8 bitov. 81 00:03:32,020 --> 00:03:35,700 Torej to pomeni, da so lahko primerni le Vrednosti v območju negativnih 2 82 00:03:35,700 --> 00:03:42,430 na sedmi moči ali negativni 128, za 2 do 7. moči minus 1 ali 127. 83 00:03:42,430 --> 00:03:45,710 >> Zahvaljujoč ASCII, je bilo že zdavnaj odločili za pot 84 00:03:45,710 --> 00:03:50,805 zemljevid tiste pozitivne številke od Od 0 do 127 različnih likov 85 00:03:50,805 --> 00:03:52,182 da vse obstaja na naši tipkovnici. 86 00:03:52,182 --> 00:03:54,640 Tako kot bomo videli kasneje v seveda, in boste verjetno 87 00:03:54,640 --> 00:03:57,700 prišel, da si zapomnimo na nekatere točka, kapital A, za example-- 88 00:03:57,700 --> 00:04:00,732 znak kapital A-- preslika na številko 65. 89 00:04:00,732 --> 00:04:02,940 In razlog za to je ker to je tisto, kar je, da je 90 00:04:02,940 --> 00:04:05,490 bile dodeljene v standardu ASCII. 91 00:04:05,490 --> 00:04:07,850 >> Male črke A je 97. 92 00:04:07,850 --> 00:04:11,900 Lik 0, ko vas dejansko tip značaj, ne 93 00:04:11,900 --> 00:04:13,532 predstavlja število nič, je 48. 94 00:04:13,532 --> 00:04:15,240 Boste izvedeli par od teh, kot greš. 95 00:04:15,240 --> 00:04:17,990 In boste zagotovo prišli do potrebujete jim malo kasneje v CS50. 96 00:04:17,990 --> 00:04:20,450 97 00:04:20,450 --> 00:04:23,390 >> Naslednja večja vrsta podatkov se s plavajočo vejico. 98 00:04:23,390 --> 00:04:26,100 Torej s plavajočo vejico, so znan tudi kot realnih števil. 99 00:04:26,100 --> 00:04:28,850 Oni so v bistvu številke, ki imajo decimalno vejico v njih. 100 00:04:28,850 --> 00:04:33,360 Plavajočo vejico kot celih tudi 101 00:04:33,360 --> 00:04:36,090 vsebovana v 4 bajtov pomnilnika. 102 00:04:36,090 --> 00:04:37,580 Zdaj ni grafikon tukaj. 103 00:04:37,580 --> 00:04:40,890 Ni številko vrstice, ker opisuje vrsto plovcem 104 00:04:40,890 --> 00:04:44,550 ni ravno jasno, ali intuitivno. 105 00:04:44,550 --> 00:04:47,350 >> Dovolj je, da vam rečem ima 32 bitov za delo z. 106 00:04:47,350 --> 00:04:49,730 In če imate več kot pi, ki ima 107 00:04:49,730 --> 00:04:55,510 celo del 3, in plavajoči točka del, ali decimalni del 0,14159, 108 00:04:55,510 --> 00:04:58,735 in tako naprej, morate biti sposoben, da zastopa vse it-- 109 00:04:58,735 --> 00:05:02,420 celo število del in decimalni del. 110 00:05:02,420 --> 00:05:04,550 >> Torej, kaj misliš, da bi to pomenilo? 111 00:05:04,550 --> 00:05:08,180 Ena stvar je, da če decimalne del dobi več in več, 112 00:05:08,180 --> 00:05:10,660 če imam zelo veliko število del, ne bom 113 00:05:10,660 --> 00:05:13,090 mogli biti kar najbolj natančna s decimalni del. 114 00:05:13,090 --> 00:05:15,280 In to je res Omejitev likvidna sredstva. 115 00:05:15,280 --> 00:05:17,229 >> Plovci imajo natančnost problem. 116 00:05:17,229 --> 00:05:19,270 Imamo le 32 bitov na delo z, tako da bomo lahko le 117 00:05:19,270 --> 00:05:22,510 biti tako natančni z našo decimalni del. 118 00:05:22,510 --> 00:05:27,300 Ne moremo imeti nujno tudi decimalko del natančen, da 100 ali 200 znakov, 119 00:05:27,300 --> 00:05:29,710 saj imamo samo 32 bitov delati. 120 00:05:29,710 --> 00:05:31,590 Tako da je omejitev likvidna sredstva. 121 00:05:31,590 --> 00:05:33,590 >> Zdaj na srečo obstaja druga vrsta podatkov imenuje 122 00:05:33,590 --> 00:05:36,530 dvojno, kar je nekoliko se ukvarja s tem problemom. 123 00:05:36,530 --> 00:05:39,980 Dvojice, kot plovci, se uporabljajo tudi za shranjevanje realne številke ali plavajočo vejico 124 00:05:39,980 --> 00:05:40,840 vrednosti. 125 00:05:40,840 --> 00:05:44,340 Razlika je v tem, da dvojice so dvojno natančnostjo. 126 00:05:44,340 --> 00:05:48,177 Ti lahko fit 64 bitov podatki, ali osem bajtov. 127 00:05:48,177 --> 00:05:49,010 Kaj to pomeni? 128 00:05:49,010 --> 00:05:51,801 No, to pomeni, da smo lahko veliko bolj natančna z decimalno vejico. 129 00:05:51,801 --> 00:05:54,830 Namesto da pi do sedem kraji, morda, s plovcem, 130 00:05:54,830 --> 00:05:56,710 bomo lahko morda ga imate na 30 krajih. 131 00:05:56,710 --> 00:05:59,824 Če je to pomembno, boste morda želeli uporabiti dvojni namesto likvidna sredstva. 132 00:05:59,824 --> 00:06:01,740 V bistvu, če ste delajo na karkoli, kjer je 133 00:06:01,740 --> 00:06:06,540 ima zelo dolgo decimalno mesto in veliko natančnostjo, je pomembno, 134 00:06:06,540 --> 00:06:08,630 boste verjetno želeli uporabite dvojnega overfloat. 135 00:06:08,630 --> 00:06:11,250 Zdaj za večino svojega dela v CS50, mora plovec zadostuje. 136 00:06:11,250 --> 00:06:15,340 Ampak vem, da obstajajo podvoji kot način, da se nekoliko ukvarjajo z natančnostjo 137 00:06:15,340 --> 00:06:20,980 Problem, ki vam daje dodaten 32 bitov za delo z za vaše številke. 138 00:06:20,980 --> 00:06:23,650 >> Zdaj to ni tip podatkov. 139 00:06:23,650 --> 00:06:24,390 To je vrsta. 140 00:06:24,390 --> 00:06:25,340 In se imenuje neveljaven. 141 00:06:25,340 --> 00:06:27,506 In govorim o tem tukaj, ker smo jih verjetno 142 00:06:27,506 --> 00:06:29,520 videl nekajkrat že v CS50. 143 00:06:29,520 --> 00:06:32,020 In morda se sprašujete, kaj to je vse okoli. 144 00:06:32,020 --> 00:06:33,390 >> Torej praznina je vrsta. 145 00:06:33,390 --> 00:06:34,097 To ne obstaja. 146 00:06:34,097 --> 00:06:35,180 Vendar ni podatkovni tip. 147 00:06:35,180 --> 00:06:39,350 >> Mi ne moremo ustvariti spremenljivko tipa izniči in dodelite vrednost. 148 00:06:39,350 --> 00:06:42,519 Toda funkcije, na primer, ima lahko tip void donosa. 149 00:06:42,519 --> 00:06:45,060 V bistvu, če ste videli funkcijo da ima tip void vračanja, 150 00:06:45,060 --> 00:06:46,970 to pomeni, da se ne vrne vrednost. 151 00:06:46,970 --> 00:06:49,440 Lahko si misliš o skupni Funkcija, ki smo jih doslej uporabili 152 00:06:49,440 --> 00:06:52,780 v CS50, ki ne vrne vrednost? 153 00:06:52,780 --> 00:06:54,700 >> Printf je ena. 154 00:06:54,700 --> 00:06:56,820 Printf dejansko ne vrne ničesar za vas. 155 00:06:56,820 --> 00:06:59,850 To natisne nekaj, na zaslon, in to je v bistvu 156 00:06:59,850 --> 00:07:01,650 stranski učinek, kar printf počne. 157 00:07:01,650 --> 00:07:03,620 Ampak ne dam vrednost nazaj. 158 00:07:03,620 --> 00:07:08,419 Vi ne zajemajo rezultat in trgovino je v nekaterih spremenljivko jo uporabljati kasneje. 159 00:07:08,419 --> 00:07:10,710 Samo natisne nekaj za zaslon in ste končali. 160 00:07:10,710 --> 00:07:14,360 >> Zato smo rekli, da printf je funkcija nična. 161 00:07:14,360 --> 00:07:16,450 Se vrne ničesar. 162 00:07:16,450 --> 00:07:18,580 >> Seznam obodu Funkcija je lahko tudi neveljavne. 163 00:07:18,580 --> 00:07:21,410 In ste videli tudi, da zelo malo v CS50 preveč. 164 00:07:21,410 --> 00:07:22,300 Int glavni neveljavne. 165 00:07:22,300 --> 00:07:23,260 Ali, da je zvonil zvonec? 166 00:07:23,260 --> 00:07:24,080 167 00:07:24,080 --> 00:07:27,220 V bistvu, kaj to pomeni, da Glavna ne sprejme nobenih parametrov. 168 00:07:27,220 --> 00:07:29,520 Ni argument, da se prenesejo v glavno. 169 00:07:29,520 --> 00:07:32,780 Zdaj kasneje bomo videli, da je način, da prenese argumente v glavnem, 170 00:07:32,780 --> 00:07:36,189 vendar doslej kar smo videti je int glavno nična. 171 00:07:36,189 --> 00:07:37,730 Glavna samo ne sprejme nobenih argumentov. 172 00:07:37,730 --> 00:07:40,236 In tako smo določiti, da z besedami, nična. 173 00:07:40,236 --> 00:07:42,110 Mi samo, da zelo Izrecno o tem 174 00:07:42,110 --> 00:07:44,430 da ne bo nobenih argumentov. 175 00:07:44,430 --> 00:07:47,160 >> Torej za zdaj, je dovolj, da pravijo, da je praznino v bistvu 176 00:07:47,160 --> 00:07:50,789 bi samo služi kot ogrado za vas, kot misliti kot nič. 177 00:07:50,789 --> 00:07:52,080 To ni res počne ničesar. 178 00:07:52,080 --> 00:07:53,550 Ni vrne vrednost tukaj. 179 00:07:53,550 --> 00:07:54,770 Tukaj ni parametri tukaj. 180 00:07:54,770 --> 00:07:55,709 To je nična. 181 00:07:55,709 --> 00:07:57,250 To je malo bolj zapletena, kot da je. 182 00:07:57,250 --> 00:08:00,640 Ampak to bi moralo zadostovati za boljši del tečaja. 183 00:08:00,640 --> 00:08:05,010 In upajmo, da sedaj imate malo malo več pojma o tem, kaj je nična. 184 00:08:05,010 --> 00:08:08,460 >> Torej, to so pet vrst Boste Srečanje, ki so vgrajeni na C. 185 00:08:08,460 --> 00:08:10,670 Toda v CS50 imamo tudi knjižnico. 186 00:08:10,670 --> 00:08:13,550 CS50.h, ki lahko vključujejo. 187 00:08:13,550 --> 00:08:15,930 In ki vam bo zagotovila z dvema dodatnima vrst 188 00:08:15,930 --> 00:08:18,280 da boste verjetno lahko za uporabo na vaših nalogah, 189 00:08:18,280 --> 00:08:21,210 ali pa samo delo na splošno programiranje. 190 00:08:21,210 --> 00:08:23,030 >> Prvi od teh je bool. 191 00:08:23,030 --> 00:08:26,780 Torej, logični podatkovni tip, bool, ki se uporablja za spremenljivke 192 00:08:26,780 --> 00:08:28,114 da bo shranite Boolova vrednost. 193 00:08:28,114 --> 00:08:29,863 Če ste kdaj slišali ta izraz, preden vas 194 00:08:29,863 --> 00:08:31,960 Morda veste, da je logičnim Vrednost je mogoče le 195 00:08:31,960 --> 00:08:34,440 držite dva različna ločene vrednosti. 196 00:08:34,440 --> 00:08:35,872 True in false. 197 00:08:35,872 --> 00:08:37,580 Zdaj pa se zdi to precej temeljna, kajne? 198 00:08:37,580 --> 00:08:40,496 To je neke vrste presenečenje, da je to ne obstaja v C, kot je to vgrajeno. 199 00:08:40,496 --> 00:08:42,640 In v mnogih sodobnih jezikov, seveda, Booleans 200 00:08:42,640 --> 00:08:45,390 so standardni privzeti podatkovni tip. 201 00:08:45,390 --> 00:08:47,192 Toda v C, oni dejansko ni. 202 00:08:47,192 --> 00:08:48,400 Ampak smo ga ustvarili za vas. 203 00:08:48,400 --> 00:08:51,910 Torej, če boste kdaj morali ustvariti spremenljivka, katere tip je bool, 204 00:08:51,910 --> 00:08:55,230 Samo se prepričajte, da #include CS50.h na začetku vašega programa, 205 00:08:55,230 --> 00:08:57,800 in boste lahko ustvarili spremenljivke tipa bool. 206 00:08:57,800 --> 00:09:02,095 >> Če ste pozabili #include CS50.h, in začnete uporabljati spremenljivk Boolean tipa, 207 00:09:02,095 --> 00:09:04,970 boste morda naleteli na nekaj težav ko ste sestavljanju svoj program. 208 00:09:04,970 --> 00:09:06,490 Torej, samo se na razgledni za to. 209 00:09:06,490 --> 00:09:11,180 In morda lahko samo fiksirana Težave z funt vključno CS50.h. 210 00:09:11,180 --> 00:09:14,590 >> Druga pomembna vrsta podatkov, ki smo zagotoviti za vas v knjižnici CS50 211 00:09:14,590 --> 00:09:15,670 je niz. 212 00:09:15,670 --> 00:09:17,130 Torej, kaj je niz? 213 00:09:17,130 --> 00:09:18,520 Strune so res samo besede. 214 00:09:18,520 --> 00:09:20,000 Oni zbirke znakov. 215 00:09:20,000 --> 00:09:20,640 Oni besed. 216 00:09:20,640 --> 00:09:21,390 Oni kazni. 217 00:09:21,390 --> 00:09:22,480 Oni odstavke. 218 00:09:22,480 --> 00:09:25,850 Lahko cele knjige, tudi. 219 00:09:25,850 --> 00:09:29,690 >> Zelo kratek, da zelo dolgo niz znakov. 220 00:09:29,690 --> 00:09:34,310 Če morate uporabiti strune, na primer, za shranjevanje besedo, 221 00:09:34,310 --> 00:09:37,609 Samo se prepričajte, da vključuje CS50.h na začetku vašega programa 222 00:09:37,609 --> 00:09:38,900 tako da lahko uporabite vrsto niza. 223 00:09:38,900 --> 00:09:43,910 In potem si lahko ustvarite spremenljivk katerih vrsta podatkov je niz. 224 00:09:43,910 --> 00:09:46,160 Sedaj kasneje v teku, bomo tudi videli, da je to 225 00:09:46,160 --> 00:09:47,752 ni celotna zgodba, bodisi. 226 00:09:47,752 --> 00:09:49,460 Bomo naleteli stvari imenovane strukture, 227 00:09:49,460 --> 00:09:54,249 ki vam omogočajo, da skupine, kar je lahko celo število in niz v eno enoto. 228 00:09:54,249 --> 00:09:56,290 In bomo lahko uporabili, da je za nekateri namen, ki bi lahko 229 00:09:56,290 --> 00:09:57,750 pridejo v priročni kasneje v teku. 230 00:09:57,750 --> 00:09:59,500 >> In bomo naučili tudi o opredeljenih vrst, 231 00:09:59,500 --> 00:10:01,720 ki vam omogočajo, da ustvarite lastne podatkovne tipe. 232 00:10:01,720 --> 00:10:03,060 Nam ni treba skrbeti O tem za zdaj. 233 00:10:03,060 --> 00:10:04,550 Ampak samo vem, da je to nekaj, na obzorju, 234 00:10:04,550 --> 00:10:07,633 da obstaja veliko več za to celoto Tip stvar kot ti pravim samo 235 00:10:07,633 --> 00:10:08,133 zdaj. 236 00:10:08,133 --> 00:10:10,591 Torej sedaj, da smo se naučili malo o osnovnih podatkov 237 00:10:10,591 --> 00:10:14,230 vrste in podatkovnih CS50 vrste, dajmo govori o tem, kako delati s spremenljivkami 238 00:10:14,230 --> 00:10:18,530 in jih ustvarite z uporabo teh podatkovni tipi v naših programih. 239 00:10:18,530 --> 00:10:22,670 Če želite ustvariti spremenljivko, vse, kar morate storiti je, da dve stvari. 240 00:10:22,670 --> 00:10:24,147 >> Prvič, boste morali dati to vrsto. 241 00:10:24,147 --> 00:10:26,230 Druga stvar, ki jo potrebujete storiti je, da to ime. 242 00:10:26,230 --> 00:10:28,740 Ko ste storili, da je in udaril podpičjem na koncu te vrstice, 243 00:10:28,740 --> 00:10:29,830 ki ste jih ustvarili spremenljivko. 244 00:10:29,830 --> 00:10:32,370 >> Torej, tukaj je dva primera. 245 00:10:32,370 --> 00:10:35,744 Int številka; char pismo ;. 246 00:10:35,744 --> 00:10:36,660 Kaj sem naredil tukaj? 247 00:10:36,660 --> 00:10:38,110 Sem ustvaril dve spremenljivki. 248 00:10:38,110 --> 00:10:40,190 >> Prvi je spremenljivka je ime je številka. 249 00:10:40,190 --> 00:10:44,830 In številka je sposoben držati celo tip vrednosti, ker je njegov tip int. 250 00:10:44,830 --> 00:10:48,040 Pismo je še ena spremenljivka da lahko imajo znake 251 00:10:48,040 --> 00:10:50,240 ker je njena vrsta podatkov je char. 252 00:10:50,240 --> 00:10:51,772 >> Precej preprosto, kajne? 253 00:10:51,772 --> 00:10:53,480 Če se znajdete V situaciji, ko 254 00:10:53,480 --> 00:10:56,250 morate ustvariti multipla spremenljivke istega tipa, 255 00:10:56,250 --> 00:10:58,740 morate samo določiti ime enkrat tipa. 256 00:10:58,740 --> 00:11:01,600 Potem samo seznam toliko spremenljivk tega tipa, kot ga potrebujete. 257 00:11:01,600 --> 00:11:04,230 >> Tako sem lahko na primer tukaj v tej tretji vrstici kode, 258 00:11:04,230 --> 00:11:07,420 pravijo, višina int ;, novo linijo. 259 00:11:07,420 --> 00:11:08,291 Int širina ;. 260 00:11:08,291 --> 00:11:09,290 In da bi bilo preveč dela. 261 00:11:09,290 --> 00:11:12,039 Jaz bi še vedno dobil dve spremenljivki imenuje višina in širina, od katerih je vsak 262 00:11:12,039 --> 00:11:12,730 je celo število. 263 00:11:12,730 --> 00:11:16,970 Ampak jaz dovoljeno, stvari C sintakse, je združila v eno samo vrstico. 264 00:11:16,970 --> 00:11:20,230 Višina Int, širina; To je ista stvar. 265 00:11:20,230 --> 00:11:23,900 Sem ustvaril dve spremenljivki, ena imenovana višina je imenovana širina, ki sta 266 00:11:23,900 --> 00:11:26,730 so sposobni gospodarstva celoštevilske vrednosti tipa. 267 00:11:26,730 --> 00:11:30,920 >> Prav tu, sem lahko ustvarite tri plavajočo vejico na enkrat. 268 00:11:30,920 --> 00:11:33,350 Lahko morda ustvariti spremenljivko imenujemo kvadratni koren 2-- 269 00:11:33,350 --> 00:11:35,766 kar verjetno bo sčasoma držite plavajoče Point-- 270 00:11:35,766 --> 00:11:39,222 da je zastopanost na trgu koren 2-- kvadratnim korenom 3, in pi. 271 00:11:39,222 --> 00:11:41,180 Lahko bi to storil na treh ločenih vrsticah. 272 00:11:41,180 --> 00:11:47,690 Float, kvadratni koren 2; Float kvadratni koren 3; float pi; in da bi delo preveč. 273 00:11:47,690 --> 00:11:50,590 >> Ampak še enkrat, jaz lahko samo utrditi to v eno vrstico kode. 274 00:11:50,590 --> 00:11:54,050 Naredi stvari malo krajši, ne kot clunky. 275 00:11:54,050 --> 00:11:57,259 >> Sedaj na splošno, da je dobro oblikovanje le razglasi spremenljivko, ko jo potrebujete. 276 00:11:57,259 --> 00:11:59,050 In bomo govorili malo malo več o tem 277 00:11:59,050 --> 00:12:00,945 Kasneje v teku ko smo razpravljali o obseg. 278 00:12:00,945 --> 00:12:03,320 Torej ni nujno, da ustvariti vse vaše spremenljivk 279 00:12:03,320 --> 00:12:05,990 na začetku programa, ki nekateri ljudje bi lahko storili v preteklosti, 280 00:12:05,990 --> 00:12:08,700 ali je bilo gotovo zelo pogosti Pred kodiranje praksi veliko let 281 00:12:08,700 --> 00:12:11,700 Pri delu s C. boste morda le želite ustvariti spremenljivo prav, ko 282 00:12:11,700 --> 00:12:13,140 jo potrebujete. 283 00:12:13,140 --> 00:12:13,640 V redu. 284 00:12:13,640 --> 00:12:15,150 Tako smo ustvarili spremenljivke. 285 00:12:15,150 --> 00:12:16,790 Kako jih uporabljamo? 286 00:12:16,790 --> 00:12:18,650 Ko smo razglasi spremenljivka, ne potrebujemo 287 00:12:18,650 --> 00:12:21,237 določiti vrsto podatkov te spremenljivke več. 288 00:12:21,237 --> 00:12:24,070 V bistvu, če boste to storili, boste morda končajo z nekaj čudnih posledic 289 00:12:24,070 --> 00:12:25,490 da bomo nekako prikriti za zdaj. 290 00:12:25,490 --> 00:12:27,365 Ampak je dovolj reči, čudne stvari se dogaja 291 00:12:27,365 --> 00:12:30,740 za začetek se dogaja, če vas nehote ponovno razglasi spremenljivke z istim imenom 292 00:12:30,740 --> 00:12:32,210 znova in znova. 293 00:12:32,210 --> 00:12:33,882 >> Torej, tukaj imam štiri vrstic kode. 294 00:12:33,882 --> 00:12:36,090 In imam par komentarji tam le z navedbo 295 00:12:36,090 --> 00:12:37,840 kaj se dogaja na vsaka vrstica samo za pomoč 296 00:12:37,840 --> 00:12:40,520 dobiš nahaja v kaj se dogaja. 297 00:12:40,520 --> 00:12:41,520 Torej int število ;. 298 00:12:41,520 --> 00:12:42,520 Boste videli, da prej. 299 00:12:42,520 --> 00:12:44,000 To je spremenljivka deklaracija. 300 00:12:44,000 --> 00:12:46,670 >> Sem zdaj ustvarila spremenljivko klicana številka, ki je 301 00:12:46,670 --> 00:12:48,970 sposoben držati vrednosti celo število tipa. 302 00:12:48,970 --> 00:12:50,210 Sem ga razglasiti. 303 00:12:50,210 --> 00:12:53,770 >> Naslednja vrstica sem dodeljevanje vrednost za številko. 304 00:12:53,770 --> 00:12:54,992 Število enaka 17. 305 00:12:54,992 --> 00:12:55,950 Kaj se tam dogaja? 306 00:12:55,950 --> 00:12:58,880 Jaz sem dajanje številko 17 znotraj te spremenljivke. 307 00:12:58,880 --> 00:13:02,760 >> Torej, če sem kdaj nato natisnete, kaj vsebina številom so kasneje, 308 00:13:02,760 --> 00:13:04,030 mi bo povedal, da je 17. 309 00:13:04,030 --> 00:13:07,030 Tako sem izjavil spremenljivko, in potem sem ga dodeljena. 310 00:13:07,030 --> 00:13:10,570 >> Mi lahko ponovite postopek spet z char pismu ;. 311 00:13:10,570 --> 00:13:11,640 To je izjava. 312 00:13:11,640 --> 00:13:14,010 Pismo je enak kapital H. To je naloga. 313 00:13:14,010 --> 00:13:16,030 Precej enostavno, preveč. 314 00:13:16,030 --> 00:13:18,319 >> Zdaj ta proces morda zdi nekako neumno. 315 00:13:18,319 --> 00:13:20,110 Zakaj to počnemo v dveh vrstic kode? 316 00:13:20,110 --> 00:13:21,401 Ali obstaja boljši način za to? 317 00:13:21,401 --> 00:13:22,250 Dejstvo je, da je. 318 00:13:22,250 --> 00:13:24,375 Včasih boste morda videli to imenuje inicializacijo. 319 00:13:24,375 --> 00:13:28,446 To je, ko razglasi spremenljivko in dodeliti vrednost istočasno. 320 00:13:28,446 --> 00:13:30,320 To je pravzaprav zelo skupna stvar. 321 00:13:30,320 --> 00:13:32,870 Ko ustvarite spremenljivko, ki ga ponavadi želim, da bi imeli neko osnovno vrednost. 322 00:13:32,870 --> 00:13:34,330 Tudi če je 0 ali kaj podobnega. 323 00:13:34,330 --> 00:13:36,180 Pravkar ste si ji dati vrednost. 324 00:13:36,180 --> 00:13:38,360 >> Lahko inicializacijo spremenljivke. 325 00:13:38,360 --> 00:13:42,320 Int številka je enaka 17 je enak prvih dveh vrstic kode up zgoraj. 326 00:13:42,320 --> 00:13:46,829 Char črka enaka h je enak kot tretji in četrti vrstic kode zgoraj. 327 00:13:46,829 --> 00:13:49,620 Najpomembnejši takeaway tukaj ko smo razglasitvi in ​​dodeljevanje 328 00:13:49,620 --> 00:13:51,740 spremenljivke, je po tem, ko smo jih je izjavil, obvestilo 329 00:13:51,740 --> 00:13:53,700 Ne bom spet z vrsto podatkov. 330 00:13:53,700 --> 00:13:57,916 Ne pravim, int število znaša 17 o druga vrstica kode, na primer. 331 00:13:57,916 --> 00:13:59,290 Pravim samo število je enako 17. 332 00:13:59,290 --> 00:14:02,537 >> Again, re-razglasitvi spremenljivke po ste že izjavila, da lahko povzroči 333 00:14:02,537 --> 00:14:03,620 do neke čudne posledice. 334 00:14:03,620 --> 00:14:05,950 Torej, samo pazite, da. 335 00:14:05,950 --> 00:14:06,660 >> Sem Doug Lloyd. 336 00:14:06,660 --> 00:14:08,870 In to je CS50. 337 00:14:08,870 --> 00:14:10,499