1 00:00:00,000 --> 00:00:02,420 >> [Musikwiedergabe] 2 00:00:02,420 --> 00:00:05,189 3 00:00:05,189 --> 00:00:05,980 SPRECHER: In Ordnung. 4 00:00:05,980 --> 00:00:08,540 Lassen Sie uns also zu einem anderen zu sprechen Sache, die Art von einzigartigen ist auf C, 5 00:00:08,540 --> 00:00:10,010 Welches ist, Datentypen und Variablen. 6 00:00:10,010 --> 00:00:12,340 Wenn ich sage, die spezifisch für C, ich habe wirklich nur im Rahmen der meine, 7 00:00:12,340 --> 00:00:14,470 wenn Sie noch ein Programmierer gewesen für eine wirklich lange Zeit, 8 00:00:14,470 --> 00:00:16,270 Sie haben wahrscheinlich nicht mit Datentypen bearbeitet 9 00:00:16,270 --> 00:00:18,470 wenn Sie moderne benutzt habe Programmiersprachen. 10 00:00:18,470 --> 00:00:20,432 Moderne Sprachen wie PHP und JavaScript, 11 00:00:20,432 --> 00:00:22,640 was wir auch ein wenig zu sehen später im Verlauf, 12 00:00:22,640 --> 00:00:25,550 Sie eigentlich nicht haben, um anzugeben, der Datentyp eines variablen 13 00:00:25,550 --> 00:00:26,270 wenn Sie es verwenden. 14 00:00:26,270 --> 00:00:28,067 >> Sie erklären es und starten Sie es. 15 00:00:28,067 --> 00:00:29,900 Wenn er eine ganze Zahl ist, ist wissen, dass es eine ganze Zahl ist. 16 00:00:29,900 --> 00:00:31,960 Wenn es ein Zeichen, es ist weiß, es ist ein Zeichen. 17 00:00:31,960 --> 00:00:35,320 Wenn es ein Wort, weiß er, es ist ein String, sogenannte. 18 00:00:35,320 --> 00:00:37,300 >> Aber in C, das ist ein älteren Sprache, wir brauchen 19 00:00:37,300 --> 00:00:39,420 um die Daten zu spezifizieren Art der jede Variable 20 00:00:39,420 --> 00:00:42,990 dass wir schaffen das erste Mal dass wir diese Variable. 21 00:00:42,990 --> 00:00:45,030 So C kommt mit einigen eingebauten Datentypen. 22 00:00:45,030 --> 00:00:46,972 Und lassen Sie uns kennen mit einige von denen. 23 00:00:46,972 --> 00:00:50,180 Und dann später werden wir auch reden ein wenig über einige der Datentypen 24 00:00:50,180 --> 00:00:54,450 dass wir für Sie geschrieben haben, so können Sie sie in CS50 verwenden. 25 00:00:54,450 --> 00:00:56,130 >> Die erste ist int. 26 00:00:56,130 --> 00:00:59,110 Der Datentyp int für Variablen verwendet das wird ganzzahlige Werte zu speichern. 27 00:00:59,110 --> 00:01:03,210 Also 1, 2, 3, negativ 1, 2, 3 und so weiter. 28 00:01:03,210 --> 00:01:05,960 Ganzen Zahlen, die etwas, das Sie ist sollten im Hinterkopf für das Quiz zu halten, 29 00:01:05,960 --> 00:01:09,590 immer nehmen vier Bytes Speicher, der ist 32 Bit. 30 00:01:09,590 --> 00:01:11,620 Es gibt acht Bits in einem Byte. 31 00:01:11,620 --> 00:01:14,470 >> Dies bedeutet also, dass der Bereich der Werte, die eine ganze Zahl speichern 32 00:01:14,470 --> 00:01:19,130 wird durch das, was innerhalb passen begrenzt 32-Bit-Wert von Informationen. 33 00:01:19,130 --> 00:01:21,850 Nun, wie sich herausstellt, es wurde vor langer Zeit entschieden, 34 00:01:21,850 --> 00:01:24,310 dass wir uns trennen dass Bereich von 32 Bit 35 00:01:24,310 --> 00:01:26,650 in negativen ganzen Zahlen und positive ganze Zahlen, 36 00:01:26,650 --> 00:01:28,390 jeweils immer die Hälfte des Bereichs. 37 00:01:28,390 --> 00:01:32,230 So Bereich der Werte, die wir vertreten, mit einem ganzzahligen Bereich von negativen 2 38 00:01:32,230 --> 00:01:36,520 bis 31. Macht, 2 bis der 31. Kraft minus 1, 39 00:01:36,520 --> 00:01:38,190 dazu führen, müssen Sie auch einen Ort für 0. 40 00:01:38,190 --> 00:01:41,650 >> Also im Grunde die Hälfte der möglichen Werte Sie können in einem int passen negativ sind, 41 00:01:41,650 --> 00:01:42,610 und die Hälfte sind positiv. 42 00:01:42,610 --> 00:01:47,270 Und etwa hier, das ist über negative 2 Milliarden, um positive 2 Milliarden. 43 00:01:47,270 --> 00:01:50,207 Geben oder nehmen ein paar hundert Millionen. 44 00:01:50,207 --> 00:01:52,290 Also das ist, was Sie zu passen kann in einer ganzzahligen Variablen. 45 00:01:52,290 --> 00:01:55,490 Jetzt haben wir auch etwas, genannt Ganzzahl ohne Vorzeichen. 46 00:01:55,490 --> 00:01:59,220 Jetzt unsigned ints sind kein getrennte Variablentyp. 47 00:01:59,220 --> 00:02:01,590 Vielmehr ist unsigned eine so genannte Qualifikationsspiel. 48 00:02:01,590 --> 00:02:04,990 Es ändert die Daten Art der Ganzzahl geringfügig. 49 00:02:04,990 --> 00:02:07,850 >> Und in diesem Fall, was für unsigned means-- und Sie können auch 50 00:02:07,850 --> 00:02:11,530 benutzen unsigned anderen Datentypen, ganze Zahl ist nicht der einzige. 51 00:02:11,530 --> 00:02:15,310 Was es tut, ist effektiv verdoppelt der positive Wertebereich 52 00:02:15,310 --> 00:02:19,350 daß eine ganze Zahl kann auf zu nehmen die Kosten für nicht mehr erlaubt 53 00:02:19,350 --> 00:02:21,140 Sie negative Werte annehmen. 54 00:02:21,140 --> 00:02:25,400 Also, wenn Sie Zahlen, die Sie wissen müssen wird höher sein als 2 Milliarden, aber weniger bekommen 55 00:02:25,400 --> 00:02:31,280 als 4 Milliarden, für example-- Das ist 2 bis 32. power-- 56 00:02:31,280 --> 00:02:33,330 möchten Sie vielleicht zu verwenden ein unsigned int, wenn Sie 57 00:02:33,330 --> 00:02:35,050 Ihre Wert wird niemals negativ sein. 58 00:02:35,050 --> 00:02:37,216 >> Sie werden gelegentlich für unsigned Variablen 59 00:02:37,216 --> 00:02:39,460 in CS50, weshalb ich erwähne es hier. 60 00:02:39,460 --> 00:02:43,830 Aber noch einmal, der Bereich der Werte, die Sie kann mit einer Ganzzahl ohne Vorzeichen darstellen 61 00:02:43,830 --> 00:02:48,240 wie regelmäßig ganze Zahl T, 0 In den 2 bis 32 minus 1, 62 00:02:48,240 --> 00:02:50,840 oder ungefähr 0-4000000000. 63 00:02:50,840 --> 00:02:53,730 So haben Sie effektiv verdoppelt die positiven Bereich, die Ihnen passen, 64 00:02:53,730 --> 00:02:56,270 aber du hast die ganze gegebene die negativen Werte. 65 00:02:56,270 --> 00:03:00,040 >> Jetzt Nebenbei unsigned ist nicht das einzige Qualifi 66 00:03:00,040 --> 00:03:01,790 dass wir für sehen könnte variable Datentypen. 67 00:03:01,790 --> 00:03:05,779 Es gibt auch Dinge genannt kurze und lange und konst. 68 00:03:05,779 --> 00:03:07,820 Const wir ein wenig zu sehen Etwas später im Verlauf. 69 00:03:07,820 --> 00:03:10,830 Kurze und lange, werden wir wahrscheinlich nicht. 70 00:03:10,830 --> 00:03:12,830 >> Aber genau wissen, dass es sind weitere Qualifikanten. 71 00:03:12,830 --> 00:03:14,080 Unsigned ist nicht der einzige. 72 00:03:14,080 --> 00:03:16,596 Aber es ist der einzige, der wir sind werde über im Augenblick sprechen. 73 00:03:16,596 --> 00:03:17,310 Also alles in Ordnung. 74 00:03:17,310 --> 00:03:18,393 Also haben wir ganze Zahlen bedeckt. 75 00:03:18,393 --> 00:03:19,200 Was kommt als nächstes? 76 00:03:19,200 --> 00:03:20,130 >> Chars. 77 00:03:20,130 --> 00:03:23,620 So chars werden für Variablen verwendet das wird ein einzelnes Zeichen zu speichern. 78 00:03:23,620 --> 00:03:24,850 Char ist die Abkürzung für Charakter. 79 00:03:24,850 --> 00:03:27,870 Und manchmal möchte man hören Menschen sprechen es als Auto. 80 00:03:27,870 --> 00:03:32,020 >> So Charaktere stets up one Byte Speicher, der nur 8 Bit ist. 81 00:03:32,020 --> 00:03:35,700 Dies bedeutet also, dass sie nur passen Werte im Bereich von negativen 2 82 00:03:35,700 --> 00:03:42,430 dem siebten Macht, oder negativ 128, In den 2 bis 7. Macht minus 1 oder 127. 83 00:03:42,430 --> 00:03:45,710 >> Dank ASCII war es vor langer Zeit beschlossen, einen Weg 84 00:03:45,710 --> 00:03:50,805 um diese positiven Zahlen von map 0 bis 127 verschiedene Zeichen 85 00:03:50,805 --> 00:03:52,182 dass alle bestehen auf unserer Tastatur. 86 00:03:52,182 --> 00:03:54,640 So, wie wir später in zu sehen der Kurs, und Sie werden wahrscheinlich 87 00:03:54,640 --> 00:03:57,700 kommen, um auf einige merken Punkt, Kapital A, für example-- 88 00:03:57,700 --> 00:04:00,732 der Charakter der Hauptstadt A-- Karten an die Nummer 65. 89 00:04:00,732 --> 00:04:02,940 Und der Grund dafür ist, denn das ist, was es ist 90 00:04:02,940 --> 00:04:05,490 nach dem ASCII-Standard zugewiesen. 91 00:04:05,490 --> 00:04:07,850 >> Kleinbuchstaben A 97. 92 00:04:07,850 --> 00:04:11,900 Das Zeichen 0 für, wenn Sie tatsächlich geben Sie die Zeichen, nicht 93 00:04:11,900 --> 00:04:13,532 repräsentieren die Zahl Null, ist 48. 94 00:04:13,532 --> 00:04:15,240 Sie werden ein paar lernen von ihnen, wie Sie gehen. 95 00:04:15,240 --> 00:04:17,990 Und Sie werden mit Sicherheit kommen zu müssen sie ein wenig später in CS50. 96 00:04:17,990 --> 00:04:20,450 97 00:04:20,450 --> 00:04:23,390 >> Die nächste große Datentyp wird Gleitkommazahlen. 98 00:04:23,390 --> 00:04:26,100 So Gleitkommazahlen sind auch als reelle Zahlen bekannt. 99 00:04:26,100 --> 00:04:28,850 Im Grunde sind sie Zahlen, haben eine Dezimalstelle in ihnen. 100 00:04:28,850 --> 00:04:33,360 Fließkommazahlen wie ganze Zahlen sind auch 101 00:04:33,360 --> 00:04:36,090 innerhalb von 4 Byte Speicher enthalten. 102 00:04:36,090 --> 00:04:37,580 Jetzt gibt es keine Diagramm hier. 103 00:04:37,580 --> 00:04:40,890 Es gibt keinen Zahlengeraden, denn die Reichweite eines float beschreiben 104 00:04:40,890 --> 00:04:44,550 ist nicht genau klar oder intuitiv. 105 00:04:44,550 --> 00:04:47,350 >> Es genügt zu sagen haben 32 Bits, mit zu arbeiten. 106 00:04:47,350 --> 00:04:49,730 Und wenn Sie eine Nummer haben wie pi, der hat 107 00:04:49,730 --> 00:04:55,510 eine ganze Zahl Teil 3 und ein Floating- Punkt teilweise nicht oder Dezimalteil 0,14159, 108 00:04:55,510 --> 00:04:58,735 und so weiter, müssen Sie sich Lage, alle es-- vertreten 109 00:04:58,735 --> 00:05:02,420 der ganzzahlige Teil und der Dezimalteil. 110 00:05:02,420 --> 00:05:04,550 >> Also, was tun Sie denken, dass vielleicht das? 111 00:05:04,550 --> 00:05:08,180 Eine Sache ist, dass wenn der Dezimalstelle Teil immer länger, 112 00:05:08,180 --> 00:05:10,660 wenn ich eine sehr große Integer-Teil, könnte ich nicht 113 00:05:10,660 --> 00:05:13,090 in der Lage, präzise sein mit dem Dezimalteil. 114 00:05:13,090 --> 00:05:15,280 Und das ist wirklich die Begrenzung von einem Schwimmer. 115 00:05:15,280 --> 00:05:17,229 >> Floats eine Genauigkeit Problem. 116 00:05:17,229 --> 00:05:19,270 Wir haben nur 32 Bit auf arbeiten mit, so können wir nur 117 00:05:19,270 --> 00:05:22,510 so präzise mit unseren Dezimalteil. 118 00:05:22,510 --> 00:05:27,300 Wir können nicht notwendigerweise eine Dezimalzahl Teil genau zu 100 oder 200 Ziffern, 119 00:05:27,300 --> 00:05:29,710 weil wir nur 32 Bit, mit zu arbeiten. 120 00:05:29,710 --> 00:05:31,590 Also das ist eine Einschränkung des Schwimmers. 121 00:05:31,590 --> 00:05:33,590 >> Nun zum Glück gibt es ein anderer Datentyp mit dem Namen 122 00:05:33,590 --> 00:05:36,530 Doppel, die etwas befasst sich mit diesem Problem. 123 00:05:36,530 --> 00:05:39,980 Doubles, wie Schwimmer, werden auch verwendet, Realzahlen oder Fließkomma speichern 124 00:05:39,980 --> 00:05:40,840 Werte. 125 00:05:40,840 --> 00:05:44,340 Der Unterschied ist, dass Doppelzimmer sind mit doppelter Genauigkeit. 126 00:05:44,340 --> 00:05:48,177 Sie können 64 Bits passen Daten oder acht Bytes. 127 00:05:48,177 --> 00:05:49,010 Was bedeutet das? 128 00:05:49,010 --> 00:05:51,801 Na ja, bedeutet dies, wir können noch viel mehr und zwar mit dem Komma. 129 00:05:51,801 --> 00:05:54,830 Anstelle von pi bis sieben Plätze vielleicht, mit einem Schwimmer, 130 00:05:54,830 --> 00:05:56,710 können wir vielleicht haben es 30 Plätze. 131 00:05:56,710 --> 00:05:59,824 Wenn es das ist wichtig, möchten Sie vielleicht einen Doppel anstelle eines Schwimmers zu verwenden. 132 00:05:59,824 --> 00:06:01,740 Grundsätzlich, wenn Sie arbeitet an etwas, wo 133 00:06:01,740 --> 00:06:06,540 mit einer wirklich langen Dezimalstelle und eine Menge Präzision ankommt, 134 00:06:06,540 --> 00:06:08,630 möchten Sie wahrscheinlich verwenden Sie ein Doppel overfloat. 135 00:06:08,630 --> 00:06:11,250 Jetzt für die meisten Ihrer Arbeit in CS50 sollte ein float ausreichen. 136 00:06:11,250 --> 00:06:15,340 Aber wissen, dass Doppel existieren als ein Möglichkeit, etwas mit der Präzision befassen 137 00:06:15,340 --> 00:06:20,980 Problem umgehen, indem Sie eine zusätzliche 32 Bits, die mit für Ihren Zahlen. 138 00:06:20,980 --> 00:06:23,650 >> Nun ist dies nicht ein Datentyp. 139 00:06:23,650 --> 00:06:24,390 Dies ist eine Art. 140 00:06:24,390 --> 00:06:25,340 Und es ist ungültig bezeichnet. 141 00:06:25,340 --> 00:06:27,506 Und ich bin darüber reden hier, weil wir haben wahrscheinlich 142 00:06:27,506 --> 00:06:29,520 ein paar Mal schon im CS50 gesehen. 143 00:06:29,520 --> 00:06:32,020 Und Sie fragen sich vielleicht, , was es überhaupt geht. 144 00:06:32,020 --> 00:06:33,390 >> So nichtig ist ein Typ. 145 00:06:33,390 --> 00:06:34,097 Es existiert. 146 00:06:34,097 --> 00:06:35,180 Aber es ist kein Datentyp. 147 00:06:35,180 --> 00:06:39,350 >> Wir können eine Variable vom Typ erstellen nichtig, und weisen Sie ihr einen Wert zu. 148 00:06:39,350 --> 00:06:42,519 Aber Funktionen, beispielsweise kann dem Rückgabetyp void haben. 149 00:06:42,519 --> 00:06:45,060 Grundsätzlich, wenn Sie eine Funktion zu sehen das hat einen Rückgabetyp void, 150 00:06:45,060 --> 00:06:46,970 es bedeutet, dass es keinen Wert zurück. 151 00:06:46,970 --> 00:06:49,440 Können Sie sich einen gemeinsamen denken Funktion, die wir bisher verwendet 152 00:06:49,440 --> 00:06:52,780 in CS50, die keinen Wert zurückgeben? 153 00:06:52,780 --> 00:06:54,700 >> Printf gehört. 154 00:06:54,700 --> 00:06:56,820 Printf nicht wirklich nichts an Sie zurück. 155 00:06:56,820 --> 00:06:59,850 Er druckt etwas, das Bildschirm, und es ist im Grunde 156 00:06:59,850 --> 00:07:01,650 eine Nebenwirkung, was printf tut. 157 00:07:01,650 --> 00:07:03,620 Aber es nicht geben Ihnen einen Wert zurück. 158 00:07:03,620 --> 00:07:08,419 Sie können das Ergebnis und speichern erfassen es in irgendeiner Variable, um sie später zu verwenden. 159 00:07:08,419 --> 00:07:10,710 Er druckt nur etwas zu der Bildschirm, und Sie sind fertig. 160 00:07:10,710 --> 00:07:14,360 >> Also sagen wir, dass printf ist eine Lücke Funktion. 161 00:07:14,360 --> 00:07:16,450 Es gibt nichts zurück. 162 00:07:16,450 --> 00:07:18,580 >> Der Umfang Liste ein Funktion kann auch ungültig. 163 00:07:18,580 --> 00:07:21,410 Und Sie haben auch gesehen, dass ziemlich viel in CS50 auch. 164 00:07:21,410 --> 00:07:22,300 Int main nichtig. 165 00:07:22,300 --> 00:07:23,260 Heißt das klingeln? 166 00:07:23,260 --> 00:07:24,080 167 00:07:24,080 --> 00:07:27,220 Im Grunde, was das bedeutet, ist, dass Haupt hat keine Parameter. 168 00:07:27,220 --> 00:07:29,520 Es gibt kein Argument, dass in den Hauptübergeben bekommen. 169 00:07:29,520 --> 00:07:32,780 Jetzt später werden wir sehen, dass es ein Weg, um Argumente in den Hauptpass, 170 00:07:32,780 --> 00:07:36,189 aber bis jetzt, was wir gesehen ist int main nichtig. 171 00:07:36,189 --> 00:07:37,730 Haupt einfach nicht nehmen keine Argumente. 172 00:07:37,730 --> 00:07:40,236 Und so geben wir damit, nichtig. 173 00:07:40,236 --> 00:07:42,110 Gerade als wir sehr expliziten über die Tatsache, 174 00:07:42,110 --> 00:07:44,430 dass es nicht nehmen keine Argumente. 175 00:07:44,430 --> 00:07:47,160 >> So jetzt, es genügt zu sagen, diese Lücke zu Grunde 176 00:07:47,160 --> 00:07:50,789 sollte nur als Platzhalter dienen, für Sie, darüber nachzudenken, wie nichts. 177 00:07:50,789 --> 00:07:52,080 Es ist nicht wirklich etwas zu tun. 178 00:07:52,080 --> 00:07:53,550 Es gibt keinen Rückgabewert hier. 179 00:07:53,550 --> 00:07:54,770 Es gibt keine Parameter hier. 180 00:07:54,770 --> 00:07:55,709 Es ist nichtig. 181 00:07:55,709 --> 00:07:57,250 Es ist ein wenig komplexer als die. 182 00:07:57,250 --> 00:08:00,640 Aber dies sollte für ausreichend der bessere Teil des Kurses. 183 00:08:00,640 --> 00:08:05,010 Und hoffentlich jetzt haben Sie ein wenig bisschen mehr von einem Konzept, was nichtig ist. 184 00:08:05,010 --> 00:08:08,460 >> Das sind also die fünf Arten du wirst Begegnung, die den C eingebaut sind 185 00:08:08,460 --> 00:08:10,670 Aber in CS50 wir haben auch eine Bibliothek. 186 00:08:10,670 --> 00:08:13,550 CS50.h, die Sie zählen können. 187 00:08:13,550 --> 00:08:15,930 Und die von Ihnen übermittelten Daten mit zwei zusätzlichen Arten 188 00:08:15,930 --> 00:08:18,280 dass Sie wahrscheinlich in der Lage sein, auf Ihre Aufträge zu verwenden, 189 00:08:18,280 --> 00:08:21,210 oder einfach nur arbeiten in der Regel die Programmierung. 190 00:08:21,210 --> 00:08:23,030 >> Der erste von diesen ist bool. 191 00:08:23,030 --> 00:08:26,780 Also das Boolean-Datentyp, bool wird für Variablen verwendet 192 00:08:26,780 --> 00:08:28,114 das wird einen Boolean-Wert zu speichern. 193 00:08:28,114 --> 00:08:29,863 Wenn Sie je gehört habe dieser Begriff vor, Sie 194 00:08:29,863 --> 00:08:31,960 vielleicht, dass ein Boolean wissen Wert in der Lage, nur ist 195 00:08:31,960 --> 00:08:34,440 Halten zwei verschiedene unterschiedliche Werte. 196 00:08:34,440 --> 00:08:35,872 Wahr und falsch. 197 00:08:35,872 --> 00:08:37,580 Nun scheint dieses hübsche grundlegende, nicht wahr? 198 00:08:37,580 --> 00:08:40,496 Es ist ein bisschen von einer Überraschung, dass diese nicht in C existiert, wie es eingebaut. 199 00:08:40,496 --> 00:08:42,640 Und in vielen modernen Sprachen, natürlich Booleans 200 00:08:42,640 --> 00:08:45,390 sind ein Standard-Default-Datentyp. 201 00:08:45,390 --> 00:08:47,192 Aber in C, sind sie eigentlich nicht. 202 00:08:47,192 --> 00:08:48,400 Aber wir haben es für Sie erstellt haben. 203 00:08:48,400 --> 00:08:51,910 Also, wenn Sie jemals brauchen werden, um zu erstellen eine Variable, deren Typ Bool, 204 00:08:51,910 --> 00:08:55,230 nur sicher sein, CS50.h # include sein zu Beginn des Programms, 205 00:08:55,230 --> 00:08:57,800 und du wirst in der Lage, zu schaffen Variablen vom Typ BOOL. 206 00:08:57,800 --> 00:09:02,095 >> Wenn Sie vergessen, CS50.h # include, und Sie Boolean-Typ-Variablen beginnen, 207 00:09:02,095 --> 00:09:04,970 Sie könnten einige Probleme auftreten wenn Sie der Zusammenstellung Ihres Programms sind. 208 00:09:04,970 --> 00:09:06,490 Also einfach auf der Suche nach, dass sein. 209 00:09:06,490 --> 00:09:11,180 Und vielleicht können Sie nur fix die Probleme Pfund einschließlich CS50.h. 210 00:09:11,180 --> 00:09:14,590 >> Die andere große Datentyp, den wir bieten für Sie in der CS50-Bibliothek 211 00:09:14,590 --> 00:09:15,670 ist String. 212 00:09:15,670 --> 00:09:17,130 Also, was ist ein String? 213 00:09:17,130 --> 00:09:18,520 Strings sind wirklich nur Worte. 214 00:09:18,520 --> 00:09:20,000 Sie sind Sammlungen von Zeichen. 215 00:09:20,000 --> 00:09:20,640 Sie sind Worte. 216 00:09:20,640 --> 00:09:21,390 Sie sind Sätze. 217 00:09:21,390 --> 00:09:22,480 Sie sind Absätzen. 218 00:09:22,480 --> 00:09:25,850 Könnte ganze Bücher selbst zu sein,. 219 00:09:25,850 --> 00:09:29,690 >> Sehr kurze, sehr lange Reihe von Zeichen. 220 00:09:29,690 --> 00:09:34,310 Wenn Sie Zeichenfolgen verwenden müssen, zum Beispiel, um ein Wort zu speichern, 221 00:09:34,310 --> 00:09:37,609 nur sicher sein, CS50.h einzuschließen zu Beginn Ihres Programms 222 00:09:37,609 --> 00:09:38,900 so können Sie die String-Typ zu verwenden. 223 00:09:38,900 --> 00:09:43,910 Und dann können Sie Variablen erstellen dessen Datentyp String. 224 00:09:43,910 --> 00:09:46,160 Jetzt später im Verlauf, Wir werden auch sehen, dass das ist, 225 00:09:46,160 --> 00:09:47,752 nicht die ganze Geschichte, auch nicht. 226 00:09:47,752 --> 00:09:49,460 Wir werden die Dinge stoßen genannt Strukturen, 227 00:09:49,460 --> 00:09:54,249 die Sie zu einer Gruppe, was auch sein mag ermöglichen eine ganze Zahl und ein String in einer Einheit. 228 00:09:54,249 --> 00:09:56,290 Und wir können die für die Verwendung einige Zweck, die Macht 229 00:09:56,290 --> 00:09:57,750 kommen in praktisch, später im Verlauf. 230 00:09:57,750 --> 00:09:59,500 >> Und wir werden auch lernen, über Typen, 231 00:09:59,500 --> 00:10:01,720 die Sie erstellen können Ihre eigenen Datentypen. 232 00:10:01,720 --> 00:10:03,060 Wir brauchen keine Sorgen zu machen etwa, dass für jetzt. 233 00:10:03,060 --> 00:10:04,550 Aber weiß nur, dass das ist, etwas auf dem Horizont, 234 00:10:04,550 --> 00:10:07,633 dass es noch viel mehr zu dieser ganzen Art Sache, als ich sage Ihnen gerade 235 00:10:07,633 --> 00:10:08,133 Jetzt. 236 00:10:08,133 --> 00:10:10,591 So, jetzt, dass wir gelernt haben, ein wenig über die Grunddaten 237 00:10:10,591 --> 00:10:14,230 Typen und die CS50-Datentypen, lassen Sie uns sprechen über den Umgang mit Variablen arbeiten 238 00:10:14,230 --> 00:10:18,530 und erstellen Sie sie mit diesen Datentypen in unseren Programmen. 239 00:10:18,530 --> 00:10:22,670 Wenn Sie eine Variable erstellen möchten, alles, was Sie tun müssen, ist zweierlei. 240 00:10:22,670 --> 00:10:24,147 >> Zuerst müssen Sie es eine Art zu geben. 241 00:10:24,147 --> 00:10:26,230 Das zweite, was Sie brauchen zu tun ist, geben Sie ihm einen Namen. 242 00:10:26,230 --> 00:10:28,740 Sobald Sie das getan haben und schlug ein Strichpunkt am Ende der Zeile, 243 00:10:28,740 --> 00:10:29,830 Sie eine Variable erstellt haben. 244 00:10:29,830 --> 00:10:32,370 >> Also hier ist zwei Beispiele. 245 00:10:32,370 --> 00:10:35,744 Int-Nummer; char Brief ;. 246 00:10:35,744 --> 00:10:36,660 Was habe ich hier gemacht? 247 00:10:36,660 --> 00:10:38,110 Ich habe zwei Variablen erstellt. 248 00:10:38,110 --> 00:10:40,190 >> Die erste, die Variablen heiße Nummer. 249 00:10:40,190 --> 00:10:44,830 Und die Anzahl der Lage ist, ganze Zahl ist Geben Sie Werte, weil sein Typ ist int. 250 00:10:44,830 --> 00:10:48,040 Schreiben ist eine andere Variable dass Zeichen enthalten 251 00:10:48,040 --> 00:10:50,240 weil ihre Datentyp char. 252 00:10:50,240 --> 00:10:51,772 >> Ziemlich einfach, nicht wahr? 253 00:10:51,772 --> 00:10:53,480 Wenn Sie sich selbst zu finden in einer Situation, in der 254 00:10:53,480 --> 00:10:56,250 Sie mehrere erstellen müssen Variablen des gleichen Typs, 255 00:10:56,250 --> 00:10:58,740 müssen Sie nur angeben, der Typname einmal. 256 00:10:58,740 --> 00:11:01,600 Dann einfach aufzulisten, so viele Variablen dieser Art, wie Sie benötigen. 257 00:11:01,600 --> 00:11:04,230 >> So konnte ich zum Beispiel hier in dieser dritten Zeile des Codes, 258 00:11:04,230 --> 00:11:07,420 sagen, int height ;, neuen Zeile. 259 00:11:07,420 --> 00:11:08,291 Int Breite ;. 260 00:11:08,291 --> 00:11:09,290 Und das auch funktionieren würde. 261 00:11:09,290 --> 00:11:12,039 Ich würde immer noch zwei Variablen namens Höhe und Breite, von denen jede 262 00:11:12,039 --> 00:11:12,730 eine ganze Zahl ist. 263 00:11:12,730 --> 00:11:16,970 Aber ich bin zu dürfen, Dinge zu C-Syntax, Konsolidierung in eine einzige Zeile. 264 00:11:16,970 --> 00:11:20,230 Int Höhe, Breite; Es ist die gleiche Sache. 265 00:11:20,230 --> 00:11:23,900 Ich habe zwei Variablen, nannte man erstellt Höhen sogenannte Breite, wobei beide 266 00:11:23,900 --> 00:11:26,730 in der Lage sind Halte Typ Integer-Werte. 267 00:11:26,730 --> 00:11:30,920 >> Ebenso hier, kann ich drei erstellen Fließkommazahlen auf einmal. 268 00:11:30,920 --> 00:11:33,350 Ich kann eine variable vielleicht erstellen genannt Quadratwurzel 2-- 269 00:11:33,350 --> 00:11:35,766 die vermutlich wird schließlich Halten Sie die schwimmenden point-- 270 00:11:35,766 --> 00:11:39,222 dass die Vertretung des Platzes Wurzel 2-- Quadratwurzel von 3 und pi. 271 00:11:39,222 --> 00:11:41,180 Ich konnte dies getan haben auf drei separate Leitungen. 272 00:11:41,180 --> 00:11:47,690 Float, Quadratwurzel 2; Float Quadratwurzel 3; float pi; und das auch funktionieren würde. 273 00:11:47,690 --> 00:11:50,590 >> Aber auch hier kann ich nur zu konsolidieren diese in eine einzige Zeile Code. 274 00:11:50,590 --> 00:11:54,050 Macht die Dinge ein wenig kürzere, nicht so klobig. 275 00:11:54,050 --> 00:11:57,259 >> Jetzt in der Regel, es ist ein gutes Design, um nur eine Variable, wenn Sie es brauchen. 276 00:11:57,259 --> 00:11:59,050 Und wir werden ein wenig sprechen etwas mehr über die 277 00:11:59,050 --> 00:12:00,945 später im Laufe wenn wir Umfang zu diskutieren. 278 00:12:00,945 --> 00:12:03,320 Also nicht unbedingt brauchen, erstellen alle Ihre Variablen 279 00:12:03,320 --> 00:12:05,990 zu Beginn des Programms, die einige Leute der Vergangenheit getan haben, 280 00:12:05,990 --> 00:12:08,700 oder war sicherlich eine sehr häufige Vor Codierung der Praxis seit vielen Jahren 281 00:12:08,700 --> 00:12:11,700 bei der Arbeit mit C. Sie können nur wollen eine variable Recht, wenn erstellen 282 00:12:11,700 --> 00:12:13,140 du brauchst es. 283 00:12:13,140 --> 00:12:13,640 Gut. 284 00:12:13,640 --> 00:12:15,150 Also haben wir Variablen erstellt. 285 00:12:15,150 --> 00:12:16,790 Wie verwenden wir diese? 286 00:12:16,790 --> 00:12:18,650 Nachdem wir erklären ein Variable, die wir nicht brauchen 287 00:12:18,650 --> 00:12:21,237 um den Datentyp angeben, dieser Variable mehr. 288 00:12:21,237 --> 00:12:24,070 In der Tat, wenn Sie dies tun, könnten Sie am Ende mit einigen seltsamen Folgen 289 00:12:24,070 --> 00:12:25,490 dass wir Art von beschönigen für jetzt. 290 00:12:25,490 --> 00:12:27,365 Aber es genügt zu sagen, seltsame Dinge gehen 291 00:12:27,365 --> 00:12:30,740 passiert, wenn Sie versehentlich starten neu deklarieren Variablen mit dem gleichen Namen 292 00:12:30,740 --> 00:12:32,210 über und über. 293 00:12:32,210 --> 00:12:33,882 >> Also hier habe ich vier Zeilen Code. 294 00:12:33,882 --> 00:12:36,090 Und ich habe ein paar Kommentare gibt nur anzeigt, 295 00:12:36,090 --> 00:12:37,840 was passiert auf jede Zeile nur helfen 296 00:12:37,840 --> 00:12:40,520 Sie erhalten in was los entfernt. 297 00:12:40,520 --> 00:12:41,520 So int Anzahl ;. 298 00:12:41,520 --> 00:12:42,520 Sie sah, dass zuvor. 299 00:12:42,520 --> 00:12:44,000 Das ist eine Variablendeklaration. 300 00:12:44,000 --> 00:12:46,670 >> Ich habe nun erstellt eine Variable rufene Nummer, die ist 301 00:12:46,670 --> 00:12:48,970 halten können Integer-Werte. 302 00:12:48,970 --> 00:12:50,210 Ich habe es erklärt. 303 00:12:50,210 --> 00:12:53,770 >> Die nächste Zeile ich Zuordnung ein Wert, der Nummer. 304 00:12:53,770 --> 00:12:54,992 Zahl entspricht 17. 305 00:12:54,992 --> 00:12:55,950 Was ist dort passiert? 306 00:12:55,950 --> 00:12:58,880 Ich setze die Zahl 17 innerhalb dieser Variablen. 307 00:12:58,880 --> 00:13:02,760 >> Also, wenn ich überhaupt dann drucken Sie heraus, was der Inhalt der Zahl sind später, 308 00:13:02,760 --> 00:13:04,030 sie werden mir sagen, es ist 17. 309 00:13:04,030 --> 00:13:07,030 Also habe ich eine Variable deklariert, und dann habe ich es zugeordnet. 310 00:13:07,030 --> 00:13:10,570 >> Wir können den Prozess zu wiederholen erneut mit char Brief ;. 311 00:13:10,570 --> 00:13:11,640 Das ist eine Erklärung. 312 00:13:11,640 --> 00:13:14,010 Schreiben gleich Hauptstadt H. Das ist eine Zuordnung. 313 00:13:14,010 --> 00:13:16,030 Ziemlich einfach, auch. 314 00:13:16,030 --> 00:13:18,319 >> Jetzt Dieser Vorgang kann scheinen irgendwie albern. 315 00:13:18,319 --> 00:13:20,110 Warum tun wir das in zwei Zeilen Code? 316 00:13:20,110 --> 00:13:21,401 Gibt es einen besseren Weg, es zu tun? 317 00:13:21,401 --> 00:13:22,250 In der Tat gibt es. 318 00:13:22,250 --> 00:13:24,375 Manchmal werden Sie vielleicht sehen, Dies als Initialisierung bezeichnet. 319 00:13:24,375 --> 00:13:28,446 Es ist, wenn Sie eine Variable deklarieren und weisen einen Wert zur gleichen Zeit. 320 00:13:28,446 --> 00:13:30,320 Dies ist eigentlich ein ziemlich gemeinsame Sache zu tun. 321 00:13:30,320 --> 00:13:32,870 Wenn Sie eine Variable, die Sie in der Regel zu erstellen wollen, dass es einige grundlegende Wert haben. 322 00:13:32,870 --> 00:13:34,330 Auch wenn es 0 oder so etwas. 323 00:13:34,330 --> 00:13:36,180 Sie haben Sie ihm einen Wert. 324 00:13:36,180 --> 00:13:38,360 >> Sie können eine Variable zu initialisieren. 325 00:13:38,360 --> 00:13:42,320 Int Anzahl gleich 17 ist die gleiche wie die ersten zwei Zeilen von Code oben. 326 00:13:42,320 --> 00:13:46,829 Char Buchstaben gleich h ist die gleiche wie die dritte und vierte Codezeilen darüber. 327 00:13:46,829 --> 00:13:49,620 Das Wichtigste zum Mitnehmen hier wenn wir erklären, und Zuweisen 328 00:13:49,620 --> 00:13:51,740 Variablen, nachdem wir erklärte sie, Ankündigung 329 00:13:51,740 --> 00:13:53,700 Ich bin nicht mit dem Datentyp wieder. 330 00:13:53,700 --> 00:13:57,916 Ich sage nicht, int Zahl entspricht 17 auf die zweite Zeile des Codes, zum Beispiel. 331 00:13:57,916 --> 00:13:59,290 Ich sage nur, Nummer entspricht 17. 332 00:13:59,290 --> 00:14:02,537 >> Auch erneute Deklaration einer Variablen nach Sie haben bereits erklärt, es führen kann, 333 00:14:02,537 --> 00:14:03,620 um einige seltsame Konsequenz. 334 00:14:03,620 --> 00:14:05,950 Also nur vorsichtig davon zu sein. 335 00:14:05,950 --> 00:14:06,660 >> Ich bin Doug Lloyd. 336 00:14:06,660 --> 00:14:08,870 Und das ist CS50. 337 00:14:08,870 --> 00:14:10,499