1 00:00:00,000 --> 00:00:02,420 >> [MUSIC PLAYING] 2 00:00:02,420 --> 00:00:05,189 3 00:00:05,189 --> 00:00:05,980 HOPARLÖR: Bütün hüququ. 4 00:00:05,980 --> 00:00:08,540 Belə ki, başqa haqqında danışmaq edək C cür unikal bir şey, 5 00:00:08,540 --> 00:00:10,010 olan data növləri və dəyişənlər var. 6 00:00:10,010 --> 00:00:12,340 Mən demək unikal C, Mən, həqiqətən, yalnız kontekstində demək, 7 00:00:12,340 --> 00:00:14,470 Bir proqramçı olduğunuz halda həqiqətən uzun müddət, 8 00:00:14,470 --> 00:00:16,270 Siz yəqin ki, var məlumat növləri ilə işləyib 9 00:00:16,270 --> 00:00:18,470 Müasir istifadə etdiyiniz halda proqramlaşdırma dilləri. 10 00:00:18,470 --> 00:00:20,432 Kimi müasir languages PHP və JavaScript, 11 00:00:20,432 --> 00:00:22,640 biz də bir az görmək lazımdır ki, Sonra əlbəttə, 12 00:00:22,640 --> 00:00:25,550 Siz, həqiqətən, müəyyən yoxdur dəyişən data type 13 00:00:25,550 --> 00:00:26,270 Siz onu istifadə zaman. 14 00:00:26,270 --> 00:00:28,067 >> Siz yalnız elan və istifadə başlayın. 15 00:00:28,067 --> 00:00:29,900 Bu tam varsa, onu Bu tam bilirik. 16 00:00:29,900 --> 00:00:31,960 Bu bir xarakter varsa, bu bu bir xarakter bilir. 17 00:00:31,960 --> 00:00:35,320 Bir söz varsa, bilir Bu sözdə bir simli var. 18 00:00:35,320 --> 00:00:37,300 >> Lakin C, olan bir older dil, biz lazım 19 00:00:37,300 --> 00:00:39,420 məlumat müəyyən etmək üçün hər dəyişən növü 20 00:00:39,420 --> 00:00:42,990 biz ilk dəfə yaratmaq ki, dəyişən istifadə. 21 00:00:42,990 --> 00:00:45,030 Belə ki, C bəzi gəlir daxili data növləri. 22 00:00:45,030 --> 00:00:46,972 Və tanış edək o bəzi. 23 00:00:46,972 --> 00:00:50,180 Və sonra sonra biz də danışmaq lazımdır məlumat növləri bəzi az 24 00:00:50,180 --> 00:00:54,450 Biz sizin üçün yazdıq ki, belə ki, CS50 istifadə edə bilərsiniz. 25 00:00:54,450 --> 00:00:56,130 >> ilk int edir. 26 00:00:56,130 --> 00:00:59,110 int data type dəyişənlər üçün istifadə olunur ki, tam dəyərlər saxlamaq olacaq. 27 00:00:59,110 --> 00:01:03,210 Belə ki, 1, 2, 3, mənfi 1, 2, 3, və s. 28 00:01:03,210 --> 00:01:05,960 Bir şey deyil Integers, viktorina üçün yadda saxlamaq lazımdır, 29 00:01:05,960 --> 00:01:09,590 həmişə dörd bytes qədər yaddaş olan 32 bit edir. 30 00:01:09,590 --> 00:01:11,620 Bir byte səkkiz bit var. 31 00:01:11,620 --> 00:01:14,470 >> Belə ki, bu sıra o deməkdir ki, bir tam bilərsiniz ki qiymətləndirir 32 00:01:14,470 --> 00:01:19,130 çərçivəsində uyğun bilər nə ilə məhdudlaşır Məlumat dəyərində 32 bit. 33 00:01:19,130 --> 00:01:21,850 İndi çıxır kimi, Bu çoxdan qərar verildi 34 00:01:21,850 --> 00:01:24,310 biz parçalamaq ki, 32 bit ki, sıra 35 00:01:24,310 --> 00:01:26,650 mənfi integers daxil və müsbət integers, 36 00:01:26,650 --> 00:01:28,390 sıra hər əldə yarısı. 37 00:01:28,390 --> 00:01:32,230 Təmsil dəyərlər sıra belə mənfi 2 tam sıra 38 00:01:32,230 --> 00:01:36,520 2 31 hakimiyyətə etmək 31 güc mənfi 1, 39 00:01:36,520 --> 00:01:38,190 siz də 0 üçün bir ləkə lazımdır səbəb olur. 40 00:01:38,190 --> 00:01:41,650 >> Mümkün dəyərlər Belə ki, əsasən yarım Əgər mənfi bir int uyğun 41 00:01:41,650 --> 00:01:42,610 və yarım müsbət. 42 00:01:42,610 --> 00:01:47,270 Və təxminən burada, bu mənfi haqqında 2 milyard müsbət 2 milyard haqqında. 43 00:01:47,270 --> 00:01:50,207 Vermək və ya bir neçə yüz milyon almaq. 44 00:01:50,207 --> 00:01:52,290 Belə ki, siz uyğun nə tam dəyişən. 45 00:01:52,290 --> 00:01:55,490 İndi biz də bir şey var imzasız tam çağırıb. 46 00:01:55,490 --> 00:01:59,220 İndi imzasız ints bir var dəyişən ayrı-ayrı növü. 47 00:01:59,220 --> 00:02:01,590 Əksinə, imzasız edir nə seçmələrində deyirlər. 48 00:02:01,590 --> 00:02:04,990 Bu data modifikasiya qədər tam növü. 49 00:02:04,990 --> 00:02:07,850 >> Və bu halda, nə imzasız means-- və siz də edə bilərsiniz 50 00:02:07,850 --> 00:02:11,530 imzasız digər məlumatlar növləri istifadə, tam yalnız bir deyil. 51 00:02:11,530 --> 00:02:15,310 Nə səmərəli yoxdur ikiqat edir dəyərlərin müsbət sıra 52 00:02:15,310 --> 00:02:19,350 tam da bilər ki, artıq imkan xərc 53 00:02:19,350 --> 00:02:21,140 mənfi dəyərlərə etmək. 54 00:02:21,140 --> 00:02:25,400 Bildiyiniz nömrələri varsa daha yüksək 2 milyard lakin az olacaq 55 00:02:25,400 --> 00:02:31,280 4 milyard daha misal üçün olan 32 üçün 2 power-- 56 00:02:31,280 --> 00:02:33,330 Siz istifadə edə bilərsiniz Əgər imzasız int 57 00:02:33,330 --> 00:02:35,050 Sizin dəyər mənfi heç vaxt bilirik. 58 00:02:35,050 --> 00:02:37,216 >> Siz bəzən lazımdır imzasız dəyişənlər üçün istifadə 59 00:02:37,216 --> 00:02:39,460 Mən burada qeyd niyə CS50, olan. 60 00:02:39,460 --> 00:02:43,830 Amma dəyərlərin yenidən sıra ki, bir imzasız tam ilə təmsil edə bilər 61 00:02:43,830 --> 00:02:48,240 müntəzəm tam t kimi, 0 var 32-ci hakimiyyətə mənfi 1 2, 62 00:02:48,240 --> 00:02:50,840 və ya təxminən 0 4 milyard. 63 00:02:50,840 --> 00:02:53,730 Belə ki, səmərəli iki dəfə etdik Siz uyğun müsbət üçündür, 64 00:02:53,730 --> 00:02:56,270 lakin bütün imtina etdik mənfi dəyərləri. 65 00:02:56,270 --> 00:03:00,040 >> İndi bir kənara, imzasız kimi yalnız seçmə deyil 66 00:03:00,040 --> 00:03:01,790 biz görə bilərsiniz ki, dəyişən data növləri. 67 00:03:01,790 --> 00:03:05,779 Adlı şeylər də var qısa və uzun və const. 68 00:03:05,779 --> 00:03:07,820 Const bir az görürsünüz az sonra kurs. 69 00:03:07,820 --> 00:03:10,830 Qısa və uzun, biz yəqin ki, olmayacaq. 70 00:03:10,830 --> 00:03:12,830 >> Amma ki, yalnız var bilirik digər seçmələri var. 71 00:03:12,830 --> 00:03:14,080 İmzasız yalnız bir deyil. 72 00:03:14,080 --> 00:03:16,596 Amma biz istəyirik yalnız biri İndi haqqında danışmaq olacaq. 73 00:03:16,596 --> 00:03:17,310 Belə ki, bütün hüququ. 74 00:03:17,310 --> 00:03:18,393 Beləliklə, biz integers əhatə etdik. 75 00:03:18,393 --> 00:03:19,200 Nə gələn var? 76 00:03:19,200 --> 00:03:20,130 >> Chars. 77 00:03:20,130 --> 00:03:23,620 Belə ki, chars dəyişənlər üçün istifadə olunur ki, bir simvol saxlamaq olacaq. 78 00:03:23,620 --> 00:03:24,850 Char xarakter üçün qısa. 79 00:03:24,850 --> 00:03:27,870 Və bəzən eşitmək bilər insanlar avtomobil kimi tələffüz. 80 00:03:27,870 --> 00:03:32,020 >> Simvol həmişə bir qədər almaq, belə ki, yalnız 8 bit yaddaş byte. 81 00:03:32,020 --> 00:03:35,700 Belə ki, bu yalnız uyğun o deməkdir ki, Mənfi 2 aralığında dəyərlər 82 00:03:35,700 --> 00:03:42,430 yeddinci güc, və ya mənfi 128, 2 7 hakimiyyəti 1 və ya 127 minus üçün. 83 00:03:42,430 --> 00:03:45,710 >> ASCII sayəsində, o çoxdan bir yol qərar 84 00:03:45,710 --> 00:03:50,805 həmin müsbət nömrələri xəritəsi Müxtəlif simvol 0 127 85 00:03:50,805 --> 00:03:52,182 bütün klaviatura mövcud. 86 00:03:52,182 --> 00:03:54,640 Biz sonra görəcəksiniz kimi, belə ki, Əlbəttə ki, və yəqin ki, lazımdır 87 00:03:54,640 --> 00:03:57,700 bəzi alarkən gəlib point, kapital A, misal üçün 88 00:03:57,700 --> 00:04:00,732 karakter paytaxtı A-- sayı 65 xəritələri. 89 00:04:00,732 --> 00:04:02,940 Və səbəbi ki, çünki bu nə var 90 00:04:02,940 --> 00:04:05,490 ASCII standart tərəfindən təyin edilmişdir. 91 00:04:05,490 --> 00:04:07,850 >> Kiçik A 97 edir. 92 00:04:07,850 --> 00:04:11,900 siz üçün xarakter 0 həqiqətən, xarakter deyil yazın 93 00:04:11,900 --> 00:04:13,532 sayı sıfır təmsil edən 48. 94 00:04:13,532 --> 00:04:15,240 Siz bir neçə öyrənmək lazımdır bu siz getmək kimi. 95 00:04:15,240 --> 00:04:17,990 Və əlbəttə ki, ehtiyac gəlmək lazımdır onlara bir az sonra CS50. 96 00:04:17,990 --> 00:04:20,450 97 00:04:20,450 --> 00:04:23,390 >> növbəti əsas data type point nömrələri üzən olunur. 98 00:04:23,390 --> 00:04:26,100 Belə ki, üzən point nömrələri də real nömrələri kimi tanınır. 99 00:04:26,100 --> 00:04:28,850 Onlar əsasən ədəd olduğunu onlara bir decimal point var. 100 00:04:28,850 --> 00:04:33,360 Üzən point dəyərləri integers kimi də 101 00:04:33,360 --> 00:04:36,090 Yaddaş 4 bayt içində. 102 00:04:36,090 --> 00:04:37,580 İndi burada heç bir chart var. 103 00:04:37,580 --> 00:04:40,890 Heç bir nömrə line çünki var bir float sıra izah 104 00:04:40,890 --> 00:04:44,550 tam aydın və ya intuitiv deyil. 105 00:04:44,550 --> 00:04:47,350 >> Siz onu demək kifayətdir ilə işləmək üçün 32 bit var. 106 00:04:47,350 --> 00:04:49,730 Və bir sıra varsa var kimi pi, 107 00:04:49,730 --> 00:04:55,510 tam part 3 və üzən point hissəsi, və ya decimal hissəsi 0,14159, 108 00:04:55,510 --> 00:04:58,735 və s, siz olmaq lazımdır pseudocode bütün təmsil edə 109 00:04:58,735 --> 00:05:02,420 tam hissəsi decimal hissəsidir. 110 00:05:02,420 --> 00:05:04,550 >> Beləliklə, nə siz ki, demək bilər? 111 00:05:04,550 --> 00:05:08,180 Bir şey ki ondalık əgər hissəsi, uzun və daha uzun olur 112 00:05:08,180 --> 00:05:10,660 Mən çox böyük varsa tam hissəsi, mən bilər 113 00:05:10,660 --> 00:05:13,090 kimi dəqiq ola bilər bu hissəsi ilə. 114 00:05:13,090 --> 00:05:15,280 Və həqiqətən bir float məhdudlaşdırılması. 115 00:05:15,280 --> 00:05:17,229 >> Floats dəqiq problem var. 116 00:05:17,229 --> 00:05:19,270 Biz yalnız 32 bit var ilə işləmək, belə ki, biz yalnız bilərsiniz 117 00:05:19,270 --> 00:05:22,510 Bizim decimal hissəsi ilə belə dəqiq olmalıdır. 118 00:05:22,510 --> 00:05:27,300 Biz mütləq decimal ola bilməz 100 və ya 200 rəqəm dəqiq hissəsi, 119 00:05:27,300 --> 00:05:29,710 biz yalnız, çünki 32 bit ilə işləmək üçün. 120 00:05:29,710 --> 00:05:31,590 Belə ki, bir float bir məhdudiyyət var. 121 00:05:31,590 --> 00:05:33,590 >> İndi xoşbəxtlikdən var adlı bir veri növü 122 00:05:33,590 --> 00:05:36,530 ikiqat olan qədər bu problem ilə məşğul olur. 123 00:05:36,530 --> 00:05:39,980 Çiftler, üzüb gedirdi kimi də istifadə olunur real nömrələri, və ya üzən point saxlamaq 124 00:05:39,980 --> 00:05:40,840 dəyərləri. 125 00:05:40,840 --> 00:05:44,340 fərq edir double double dəqiq var. 126 00:05:44,340 --> 00:05:48,177 Onlar 64 bit uyğun data, və ya səkkiz bytes. 127 00:05:48,177 --> 00:05:49,010 Bunun mənası nədir? 128 00:05:49,010 --> 00:05:51,801 Bəli, biz ola bilər deməkdir daha çox bu kəsir dəqiq. 129 00:05:51,801 --> 00:05:54,830 Bunun əvəzinə yeddi pi olan bir float ilə bəlkə yerləri, 130 00:05:54,830 --> 00:05:56,710 biz bəlkə 30 yerlərinə ola bilər. 131 00:05:56,710 --> 00:05:59,824 Ki, vacibdir, siz istədiyiniz bilər əvəzinə float ikiqat istifadə etmək. 132 00:05:59,824 --> 00:06:01,740 Ümumiyyətlə, siz değilseniz bir şey olduğu üzərində işləyir 133 00:06:01,740 --> 00:06:06,540 həqiqətən uzun decimal yerə sahib və dəqiq bir çox vacibdir 134 00:06:06,540 --> 00:06:08,630 Siz yəqin ki, istəyirəm ikiqat overfloat istifadə edin. 135 00:06:08,630 --> 00:06:11,250 İndi sizin iş üçün ən CS50, bir float kifayət olmalıdır. 136 00:06:11,250 --> 00:06:15,340 Amma iki dəfə kimi mövcud olduğunu bilirik qədər dəqiqliyi ilə məşğul yol 137 00:06:15,340 --> 00:06:20,980 32 əlavə verərək problem bit nömrələri ilə işləmək üçün. 138 00:06:20,980 --> 00:06:23,650 >> İndi bu veri növü deyil. 139 00:06:23,650 --> 00:06:24,390 Bu bir növüdür. 140 00:06:24,390 --> 00:06:25,340 Və etibarsız deyirlər. 141 00:06:25,340 --> 00:06:27,506 Və mən bu barədə söhbət alıram Burada biz yəqin ki, var, çünki 142 00:06:27,506 --> 00:06:29,520 Artıq bir neçə dəfə CS50 Göründüyü. 143 00:06:29,520 --> 00:06:32,020 Və merak bilər nə bütün haqqında. 144 00:06:32,020 --> 00:06:33,390 >> Belə ki, etibarsız bir növüdür. 145 00:06:33,390 --> 00:06:34,097 Bu mövcuddur. 146 00:06:34,097 --> 00:06:35,180 Amma bir veri növü deyil. 147 00:06:35,180 --> 00:06:39,350 >> Biz tipli dəyişən yarada bilməz ləğv, bir dəyər təyin. 148 00:06:39,350 --> 00:06:42,519 Amma funksiyaları, məsələn, bir etibarsız qaytarılması növü ola bilər. 149 00:06:42,519 --> 00:06:45,060 Ümumiyyətlə, siz bir funksiyası görmək əgər ki, etibarsız qaytarılması növü var, 150 00:06:45,060 --> 00:06:46,970 bu bir dəyər qayıtmaq deyil deməkdir. 151 00:06:46,970 --> 00:06:49,440 Siz ümumi hesab edə bilər Biz bu günə qədər istifadə etdiyiniz funksiyası 152 00:06:49,440 --> 00:06:52,780 CS50 bir dəyər qayıtmaq deyil ki? 153 00:06:52,780 --> 00:06:54,700 >> Printf biridir. 154 00:06:54,700 --> 00:06:56,820 Printf həqiqətən deyil sizə bir şey qayıtmaq. 155 00:06:56,820 --> 00:06:59,850 Bu bir şey yazdıran ekran, və əsasən 156 00:06:59,850 --> 00:07:01,650 printf nə bir yan təsiri. 157 00:07:01,650 --> 00:07:03,620 Amma bu, bir dəyər geri vermir. 158 00:07:03,620 --> 00:07:08,419 Siz nəticə və mağaza tutmaq deyil Bəzi dəyişən sonra onu istifadə etmək. 159 00:07:08,419 --> 00:07:10,710 Bu, sadəcə bir şey yazdıran ekran və siz tamamlayın. 160 00:07:10,710 --> 00:07:14,360 >> Beləliklə, biz printf ki, demək bir boşluq funksiyası var. 161 00:07:14,360 --> 00:07:16,450 Bu heç bir şey qaytarır. 162 00:07:16,450 --> 00:07:18,580 >> bir perimetri siyahısı funksiyası da etibarsız ola bilər. 163 00:07:18,580 --> 00:07:21,410 Və siz də gördüm çox CS50 bir qədər. 164 00:07:21,410 --> 00:07:22,300 Int əsas void. 165 00:07:22,300 --> 00:07:23,260 Bir zəng çalmaq ki, yoxdur? 166 00:07:23,260 --> 00:07:24,080 167 00:07:24,080 --> 00:07:27,220 Əsasən nə deməkdir ki, Əsas hər hansı parametrləri daşımır. 168 00:07:27,220 --> 00:07:29,520 Heç bir dəlil yoxdur ki, Əsas keçdi almaq. 169 00:07:29,520 --> 00:07:32,780 İndi sonra biz olduğunu görəcəksiniz bir yol, əsas daxil dəlilləri keçmək 170 00:07:32,780 --> 00:07:36,189 lakin bu günə qədər biz nə int əsas etibarsız görülür. 171 00:07:36,189 --> 00:07:37,730 Main yalnız hər hansı bir dəlilləri daşımır. 172 00:07:37,730 --> 00:07:40,236 Və belə ki, biz etibarsız söyləyərək daxil. 173 00:07:40,236 --> 00:07:42,110 Biz yalnız çox olan edirik bu barədə açıq 174 00:07:42,110 --> 00:07:44,430 hər hansı arqumentlər deyil ki. 175 00:07:44,430 --> 00:07:47,160 >> Indi üçün Belə ki, kifayətdir əsasən ki, etibarsız demək 176 00:07:47,160 --> 00:07:50,789 Yalnız bir tutucu kimi xidmət etməlidir Sizin üçün bir şey kimi haqqında düşünür kimi. 177 00:07:50,789 --> 00:07:52,080 Bu, həqiqətən bir şey bunu deyil. 178 00:07:52,080 --> 00:07:53,550 Burada heç bir qaytarılması dəyəri var. 179 00:07:53,550 --> 00:07:54,770 Burada heç bir parametrləri var. 180 00:07:54,770 --> 00:07:55,709 Bu boşluq var. 181 00:07:55,709 --> 00:07:57,250 Bu bir az daha kompleks var. 182 00:07:57,250 --> 00:08:00,640 Amma bu kifayət olmalıdır Kursun yaxşı hissəsi. 183 00:08:00,640 --> 00:08:05,010 Və inşallah indi bir az var etibarsız nə bir anlayış daha çox bit. 184 00:08:05,010 --> 00:08:08,460 >> O belə beş növ will var inşa olunur C. qarşılaşma 185 00:08:08,460 --> 00:08:10,670 Amma CS50 biz də bir kitabxana var. 186 00:08:10,670 --> 00:08:13,550 Siz daxil ola bilər CS50.h. 187 00:08:13,550 --> 00:08:15,930 Və təmin edəcək iki əlavə növləri ilə 188 00:08:15,930 --> 00:08:18,280 Siz yəqin ki, edə bilərsiniz ki, Sizin tapşırıqları istifadə etmək, 189 00:08:18,280 --> 00:08:21,210 və ya yalnız adətən iş proqramlaşdırma. 190 00:08:21,210 --> 00:08:23,030 >> Bunlardan birincisi bool edir. 191 00:08:23,030 --> 00:08:26,780 Belə ki, Boolean data növü, bool, dəyişənlər üçün istifadə olunur 192 00:08:26,780 --> 00:08:28,114 ki, bir Boolean dəyər saxlamaq olacaq. 193 00:08:28,114 --> 00:08:29,863 Əgər eşitdim varsa bu müddət əvvəl, siz 194 00:08:29,863 --> 00:08:31,960 boolean ki, bilirik bilər dəyəri yalnız qadirdir 195 00:08:31,960 --> 00:08:34,440 iki fərqli fərqli dəyərlər keçirilməsi. 196 00:08:34,440 --> 00:08:35,872 True və yalan. 197 00:08:35,872 --> 00:08:37,580 İndi bu olduqca görünür fundamental, sağ? 198 00:08:37,580 --> 00:08:40,496 Bu ki, bir sürpriz növü var Bu daxili kimi C mövcud deyil. 199 00:08:40,496 --> 00:08:42,640 Və bir çox müasir dildə, əlbəttə, Booleans 200 00:08:42,640 --> 00:08:45,390 Standart default data növü var. 201 00:08:45,390 --> 00:08:47,192 Lakin C, onlar həqiqətən deyilik. 202 00:08:47,192 --> 00:08:48,400 Amma biz sizin üçün yaratdıq. 203 00:08:48,400 --> 00:08:51,910 Əgər yaratmaq lazımdır Belə ki kimin növü bool bir dəyişən, 204 00:08:51,910 --> 00:08:55,230 yalnız CS50.h # daxil əmin olun proqram əvvəlində, 205 00:08:55,230 --> 00:08:57,800 və yaratmaq edə bilərsiniz bool tipli dəyişənlər. 206 00:08:57,800 --> 00:09:02,095 >> Siz CS50.h # daxil etmək unutmaq və əgər Siz Boolean tipli dəyişənlər istifadə edərək başlamaq 207 00:09:02,095 --> 00:09:04,970 Siz bəzi problemlər qarşılaşa bilər zaman sizin proqram tərtib edirik. 208 00:09:04,970 --> 00:09:06,490 Belə ki, yalnız üçün gözetleme olmaq. 209 00:09:06,490 --> 00:09:11,180 Və bəlkə siz yalnız düzeltebilirsiniz cs50.h. daxil olmaqla, funt problemləri 210 00:09:11,180 --> 00:09:14,590 >> digər böyük data type ki, biz CS50 kitabxana sizin üçün təmin 211 00:09:14,590 --> 00:09:15,670 simli edir. 212 00:09:15,670 --> 00:09:17,130 Belə bir string nədir? 213 00:09:17,130 --> 00:09:18,520 Strings, həqiqətən, yalnız sözlər var. 214 00:09:18,520 --> 00:09:20,000 Onlar simvol kolleksiyaları istəyirik. 215 00:09:20,000 --> 00:09:20,640 Onlar sözləri istəyirik. 216 00:09:20,640 --> 00:09:21,390 Onlar cümlələri istəyirik. 217 00:09:21,390 --> 00:09:22,480 Onlar ci maddələrdə istəyirik. 218 00:09:22,480 --> 00:09:25,850 Hətta, bütün kitab ola bilər. 219 00:09:25,850 --> 00:09:29,690 >> Çox uzun üçün çox qısa simvol seriyası. 220 00:09:29,690 --> 00:09:34,310 Siz strings istifadə etmək lazımdır, Məsələn, bir söz saxlamaq üçün, 221 00:09:34,310 --> 00:09:37,609 yalnız CS50.h daxil olun proqram əvvəlində 222 00:09:37,609 --> 00:09:38,900 belə ki, simli növü istifadə edə bilərsiniz. 223 00:09:38,900 --> 00:09:43,910 Və sonra dəyişənlər yaratmaq bilər kimin data type simli edir. 224 00:09:43,910 --> 00:09:46,160 İndi sonra əlbəttə, biz də ki, görürsünüz 225 00:09:46,160 --> 00:09:47,752 ya deyil, bütün hekayə. 226 00:09:47,752 --> 00:09:49,460 Biz hər şeyi qarşılaşa bilərsiniz adlı strukturları, 227 00:09:49,460 --> 00:09:54,249 ola bilər nə qrup sizə imkan verir ki, bir tam və vahid bir string. 228 00:09:54,249 --> 00:09:56,290 Və biz istifadə edə bilərsiniz bir məqsəd, güc 229 00:09:56,290 --> 00:09:57,750 kurs sonra lazımlı olur. 230 00:09:57,750 --> 00:09:59,500 >> Və biz də öyrənmək lazımdır müəyyən növləri haqqında, 231 00:09:59,500 --> 00:10:01,720 siz yaratmaq imkan verir Öz data növləri. 232 00:10:01,720 --> 00:10:03,060 Biz narahat ehtiyac yoxdur indi bu barədə. 233 00:10:03,060 --> 00:10:04,550 Amma ki, yalnız var bilirik ki, üfüqdə bir şey, 234 00:10:04,550 --> 00:10:07,633 bu bütün daha çox var ki, Mən yalnız sizə deyirəm çox növü şey 235 00:10:07,633 --> 00:10:08,133 indi. 236 00:10:08,133 --> 00:10:10,591 Belə ki, indi biz bir öyrəndim ki, əsas məlumatların az 237 00:10:10,591 --> 00:10:14,230 növləri və CS50 data növləri, edək dəyişənlərin ilə işləmək üçün necə haqqında danışmaq 238 00:10:14,230 --> 00:10:18,530 və bu istifadə edərək, onları yaratmaq Bizim proqramlarında data növləri. 239 00:10:18,530 --> 00:10:22,670 Bir dəyişən yaratmaq istəyirsinizsə, Siz nə etmək lazımdır bütün iki şeyi edir. 240 00:10:22,670 --> 00:10:24,147 >> Birincisi, siz bir növü vermək lazımdır. 241 00:10:24,147 --> 00:10:26,230 Sizə lazım olan ikinci şey etmək üçün bir ad verir. 242 00:10:26,230 --> 00:10:28,740 Ki, görülən və yumruq atdı sonra bir ki, xəttin sonunda nöqtəli vergül, 243 00:10:28,740 --> 00:10:29,830 Bir dəyişən yaratdıq. 244 00:10:29,830 --> 00:10:32,370 >> Belə ki, burada iki misal var. 245 00:10:32,370 --> 00:10:35,744 Int nömrəsi; char məktub ;. 246 00:10:35,744 --> 00:10:36,660 Mən burada nə var? 247 00:10:36,660 --> 00:10:38,110 Mən iki dəyişənlərin yaratdıq. 248 00:10:38,110 --> 00:10:40,190 >> dəyişən nin ilk adı nömrəsini. 249 00:10:40,190 --> 00:10:44,830 Və sayı tam keçirilməsi qadirdir onun növü int çünki dəyərlər yazın. 250 00:10:44,830 --> 00:10:48,040 Letter başqa dəyişən ki, simvol aça bilər 251 00:10:48,040 --> 00:10:50,240 onun data növü char çünki. 252 00:10:50,240 --> 00:10:51,772 >> Pretty sadə, sağ? 253 00:10:51,772 --> 00:10:53,480 Siz özünüzü tapmaq varsa bir vəziyyət 254 00:10:53,480 --> 00:10:56,250 birdən çox yaratmaq lazımdır Eyni tipli dəyişənlər, 255 00:10:56,250 --> 00:10:58,740 Yalnız müəyyən etmək lazımdır bir növü adı. 256 00:10:58,740 --> 00:11:01,600 Sonra bir çox dəyişənlər siyahısı ki növü sizə lazım kimi. 257 00:11:01,600 --> 00:11:04,230 >> Beləliklə, mən, məsələn, burada bilər kodu bu üçüncü xətt, 258 00:11:04,230 --> 00:11:07,420 int hündürlük ;, yeni deyirlər. 259 00:11:07,420 --> 00:11:08,291 Int eni ;. 260 00:11:08,291 --> 00:11:09,290 Və çox iş olardı. 261 00:11:09,290 --> 00:11:12,039 Mən hələ iki dəyişənlərin adlı almaq istədiyiniz hündürlüyü və eni, hər hansı 262 00:11:12,039 --> 00:11:12,730 tam deyil. 263 00:11:12,730 --> 00:11:16,970 Amma, C sintaksis şeyi icazə alıram bir xətt onu gücləndirmək. 264 00:11:16,970 --> 00:11:20,230 Int hündürlüyü, eni; Bu eyni şey. 265 00:11:20,230 --> 00:11:23,900 Mən adlı iki dəyişənlərin bir yaratdıq width adlı boyu bir hər ikisi 266 00:11:23,900 --> 00:11:26,730 holdinqin bilən tam növü dəyərlər. 267 00:11:26,730 --> 00:11:30,920 >> Eynilə burada, mən üç yarada bir dəfə point dəyərləri üzən. 268 00:11:30,920 --> 00:11:33,350 Mən bəlkə bir dəyişən yarada 2-- kvadrat kök adlı 269 00:11:33,350 --> 00:11:35,766 olan ehtimalla nəhayət olacaq üzən point keçirilməsi 270 00:11:35,766 --> 00:11:39,222 Meydanın ki nümayəndəliyi 2-- kvadrat 3 kök, və pi kök. 271 00:11:39,222 --> 00:11:41,180 Mən bu həyata bilər var üç ayrı-ayrı xətləri. 272 00:11:41,180 --> 00:11:47,690 Float, kvadrat kök 2; Kvadrat kök Float 3; pi float; və çox iş olardı. 273 00:11:47,690 --> 00:11:50,590 >> Ancaq yenə də, mən yalnız birləşdirmək olar kodun bir xətt bu. 274 00:11:50,590 --> 00:11:54,050 Şeyi bir az edir qısa, kimi clunky deyil. 275 00:11:54,050 --> 00:11:57,259 >> İndi ümumiyyətlə, yalnız yaxşı dizayn Siz lazım bir dəyişən elan. 276 00:11:57,259 --> 00:11:59,050 Və biz bir az danışmaq lazımdır bu barədə az daha 277 00:11:59,050 --> 00:12:00,945 sonra kurs zaman çərçivəsində müzakirə. 278 00:12:00,945 --> 00:12:03,320 Belə ki, mütləq lazım deyil Sizin dəyişənlərin bütün yaratmaq 279 00:12:03,320 --> 00:12:05,990 Proqramın başında olan Bəzi insanlar, keçmiş görmüşük bilər 280 00:12:05,990 --> 00:12:08,700 və ya, əlbəttə, bir çox ortaq oldu kodlaşdırma təcrübə bir çox il əvvəl 281 00:12:08,700 --> 00:12:11,700 C. ilə iş zaman Siz yalnız bilər bir dəyişən hüququ yaratmaq istəyirik 282 00:12:11,700 --> 00:12:13,140 Siz lazım. 283 00:12:13,140 --> 00:12:13,640 Oldu. 284 00:12:13,640 --> 00:12:15,150 Beləliklə, biz dəyişənlərin yaratdıq. 285 00:12:15,150 --> 00:12:16,790 Necə ki, biz onlardan istifadə edə bilərəm? 286 00:12:16,790 --> 00:12:18,650 Biz bəyan sonra dəyişən, biz lazım deyil 287 00:12:18,650 --> 00:12:21,237 data növü müəyyən etmək üçün ki, dəyişən artıq. 288 00:12:21,237 --> 00:12:24,070 Bunu əgər Əslində, siz bilər bəzi qəribə nəticələri ilə son 289 00:12:24,070 --> 00:12:25,490 biz növ indi ötürməyə lazımdır ki. 290 00:12:25,490 --> 00:12:27,365 Amma demək kifayətdir, qəribə şeylər gedir 291 00:12:27,365 --> 00:12:30,740 sehven əgər baş başlamaq üçün Eyni adı ilə dəyişənlərin-elan yenidən 292 00:12:30,740 --> 00:12:32,210 üzərində. 293 00:12:32,210 --> 00:12:33,882 >> Belə ki, burada Mən kodu dörd xətləri var. 294 00:12:33,882 --> 00:12:36,090 Mən bir neçə var yalnız ifadə var şərhlər 295 00:12:36,090 --> 00:12:37,840 Nə baş Hər line yalnız kömək etmək 296 00:12:37,840 --> 00:12:40,520 Siz neler yerləşən almaq. 297 00:12:40,520 --> 00:12:41,520 Belə ki, int sayı ;. 298 00:12:41,520 --> 00:12:42,520 Siz əvvəl gördüm. 299 00:12:42,520 --> 00:12:44,000 Ki, bir dəyişən elan var. 300 00:12:44,000 --> 00:12:46,670 >> İndi bir dəyişən yaratdıq adlı sayı 301 00:12:46,670 --> 00:12:48,970 tam tipli dəyərlər keçirilməsi qadir. 302 00:12:48,970 --> 00:12:50,210 Mən bunu elan etdik. 303 00:12:50,210 --> 00:12:53,770 >> Mən təyin alıram növbəti line nömrəsinə dəyəri. 304 00:12:53,770 --> 00:12:54,992 Number 17 bərabərdir. 305 00:12:54,992 --> 00:12:55,950 Orada nə baş verir? 306 00:12:55,950 --> 00:12:58,880 Mən sayı 17 qoyulması alıram ki, dəyişən daxilində. 307 00:12:58,880 --> 00:13:02,760 >> Mən heç sonra çap əgər Belə ki, nə sıra məzmunu sonra var, 308 00:13:02,760 --> 00:13:04,030 onlar 17 mənə deyim. 309 00:13:04,030 --> 00:13:07,030 Mən bir dəyişən elan etdik, və sonra mən onu təyin etdik. 310 00:13:07,030 --> 00:13:10,570 >> Biz prosesi təkrar edə bilərsiniz daha char hərfi ilə ;. 311 00:13:10,570 --> 00:13:11,640 Ki, bir bəyannamə var. 312 00:13:11,640 --> 00:13:14,010 Letter paytaxtı bərabərdir H. Bu bir tapşırıq var. 313 00:13:14,010 --> 00:13:16,030 Pretty sadə, çox. 314 00:13:16,030 --> 00:13:18,319 >> İndi bu proses bilər cür silly görünür. 315 00:13:18,319 --> 00:13:20,110 Niyə biz bunu edirik kodu iki xətləri? 316 00:13:20,110 --> 00:13:21,401 Bunu daha yaxşı bir yolu var mı? 317 00:13:21,401 --> 00:13:22,250 Əslində, var. 318 00:13:22,250 --> 00:13:24,375 Bəzən görə bilərsiniz Bu başlatma çağırıb. 319 00:13:24,375 --> 00:13:28,446 Bir dəyişən elan zaman var və eyni zamanda bir dəyər təyin. 320 00:13:28,446 --> 00:13:30,320 Bu, həqiqətən, olduqca deyil ümumi şey. 321 00:13:30,320 --> 00:13:32,870 Bir dəyişən, siz adətən yaratmaq zaman Bəzi əsas dəyər olsun. 322 00:13:32,870 --> 00:13:34,330 Hətta 0 və ya bir şey varsa. 323 00:13:34,330 --> 00:13:36,180 Siz yalnız bir dəyər verir. 324 00:13:36,180 --> 00:13:38,360 >> Siz dəyişən başlamaq bilər. 325 00:13:38,360 --> 00:13:42,320 17 bərabərdir sayı int kimi eyni yuxarıda kodu ilk iki xətləri. 326 00:13:42,320 --> 00:13:46,829 Char məktub h kimi eyni bərabərdir Yuxarıda kodu üçüncü və dördüncü xətləri. 327 00:13:46,829 --> 00:13:49,620 Burada ən əhəmiyyətli paket biz elan və təyin etdiyiniz zaman 328 00:13:49,620 --> 00:13:51,740 biz sonra dəyişənlərin var onu elan bildiriş 329 00:13:51,740 --> 00:13:53,700 Mən yenə data növü istifadə edərək deyiləm. 330 00:13:53,700 --> 00:13:57,916 Mən int sayı 17 bərabərdir demirəm Məsələn, ikinci xətt kodu. 331 00:13:57,916 --> 00:13:59,290 Mən yalnız sayı 17 bərabərdir deyirəm. 332 00:13:59,290 --> 00:14:02,537 >> Yenə bir dəyişən sonra yenidən elan Əgər siz artıq bu çıxara bilər bəyan etdik 333 00:14:02,537 --> 00:14:03,620 bəzi qəribə nəticəsi üçün. 334 00:14:03,620 --> 00:14:05,950 Belə ki, yalnız ki, ehtiyatlı olun. 335 00:14:05,950 --> 00:14:06,660 >> Mən Doug Lloyd edirəm. 336 00:14:06,660 --> 00:14:08,870 Bu CS50 edir. 337 00:14:08,870 --> 00:14:10,499