1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:00,860 >> Sprecher 1: In Ordnung. 3 00:00:00,860 --> 00:00:03,260 Das letzte Programm war ein wenig langweilig. 4 00:00:03,260 --> 00:00:05,510 Fahren wir fort und personalisieren diese ein wenig. 5 00:00:05,510 --> 00:00:07,710 Anstatt zu sagen, hallo Welt, warum wir nicht weitermachen 6 00:00:07,710 --> 00:00:09,680 und sagen, hallo David? 7 00:00:09,680 --> 00:00:12,500 Nun, dies zu tun, ich Ansatz könnte dies in einer Reihe von Möglichkeiten. 8 00:00:12,500 --> 00:00:15,760 Ich konnte natürlich nur schwer Code David, aber das ist nicht alles, 9 00:00:15,760 --> 00:00:17,650 grundlegend unterschiedliche von der letzten Version. 10 00:00:17,650 --> 00:00:21,430 Werfen wir also einen Sprung nach vorne, rückgängig zu machen, dass zu ändern, und stattdessen legen Sie eine neue 11 00:00:21,430 --> 00:00:23,980 Codezeile, wo fünf Linie einmal war. 12 00:00:23,980 --> 00:00:28,970 >> Genauer gesagt, was ich hier zu tun wird in der Stringnamen hinzuzufügen, damit 13 00:00:28,970 --> 00:00:30,920 Deklaration einer Variablen. 14 00:00:30,920 --> 00:00:34,240 Beachten Sie, dass in C, nicht nur, dass Sie Um eine Variable ein Name, der in zu geben, 15 00:00:34,240 --> 00:00:38,110 In diesem Fall ist der Name, haben Sie auch , um festzulegen, welche Art es ist. 16 00:00:38,110 --> 00:00:41,970 Wir werden andere bald sehen, unter sie Ganzzahlen-und Fließkomma 17 00:00:41,970 --> 00:00:46,480 Werte und vieles mehr, aber für jetzt, string ist nur ein Wort oder eine Phrase, mehr 18 00:00:46,480 --> 00:00:49,340 formal eine Folge von Null oder mehr Zeichen. 19 00:00:49,340 --> 00:00:53,760 Also im Moment ist diese Linie fünf Sprichwort, gib mir eine Variable namens Namen 20 00:00:53,760 --> 00:00:56,560 deren Datentyp String. 21 00:00:56,560 --> 00:01:00,460 >> Jetzt möchte ich einen Wert in dort zu speichern, und dass in C, verwenden wir die gleiche 22 00:01:00,460 --> 00:01:03,030 schreiben, sonst wie die bekannte Zuweisungsoperator. 23 00:01:03,030 --> 00:01:04,860 Also werde ich wie folgt vorgehen. 24 00:01:04,860 --> 00:01:10,220 Gleich Zitat, Zitat Ende, D-A-V-I-D, geschlossenen Zitat, Semikolon. 25 00:01:10,220 --> 00:01:15,595 Der Nettoeffekt in Zeile fünf ist es nun, erklären, einen String, D-A-V-I-D, Speicherung 26 00:01:15,595 --> 00:01:19,480 es von der rechten Seite davon Ausdruck in der Variablen auf der 27 00:01:19,480 --> 00:01:21,480 linken Seite des Ausdrucks. 28 00:01:21,480 --> 00:01:25,970 Also bis Ende dieser Linie haben wir D-A-V-I-D Innenseite einer Variable gespeichert 29 00:01:25,970 --> 00:01:27,450 genannte Namen. 30 00:01:27,450 --> 00:01:28,910 >> Nun wollen wir diese Variable. 31 00:01:28,910 --> 00:01:35,010 In Zeile sechs, werde ich ersetzen Welt mit einem Platzhalter. 32 00:01:35,010 --> 00:01:39,960 % S wird nach der definierte Dokumentation für printf als ein 33 00:01:39,960 --> 00:01:41,690 Platzhalter für eine Zeichenfolge. 34 00:01:41,690 --> 00:01:44,620 In anderen Worten, es ist ein Weg der Information printf, die werde ich setzen 35 00:01:44,620 --> 00:01:47,930 hier einen anderen Wert, aber lassen Sie mich Ihnen sagen, in nur einem Augenblick, was 36 00:01:47,930 --> 00:01:49,180 es wird sein. 37 00:01:49,180 --> 00:01:52,800 Nun, wie muss ich vorgehen, um zu sagen printf was das Wert sein wird? 38 00:01:52,800 --> 00:01:56,850 >> Nun, ich muss mit einer printf bieten zweite Argument, und das zu tun, ich 39 00:01:56,850 --> 00:02:00,460 müssen Sie ein Komma nach dem ersten derartigen setzen Argument, das diese zitiert wurde 40 00:02:00,460 --> 00:02:04,990 Schnur, und dann muss ich angeben, was Wert Ich möchte, dass in Steck 41 00:02:04,990 --> 00:02:07,010 erste Argument Platzhalter. 42 00:02:07,010 --> 00:02:10,880 So der Name meiner variabel ist, von Natürlich, Name, so reicht es aus, geben Sie 43 00:02:10,880 --> 00:02:14,000 "Name" als zweite Argument von printf. 44 00:02:14,000 --> 00:02:15,070 Jetzt nicht irregeführt werden. 45 00:02:15,070 --> 00:02:20,440 Auch wenn es ein Komma Innenseite die Anführungszeichen, das ist in der Tat 46 00:02:20,440 --> 00:02:24,370 innerhalb des Strings damit es nicht trennen, ein Argument von einem anderen. 47 00:02:24,370 --> 00:02:28,740 Nur dieses Komma, die außerhalb, das ist Anführungszeichen tatsächlich trennt 48 00:02:28,740 --> 00:02:31,700 erste Argument von printf die zweites Argument. 49 00:02:31,700 --> 00:02:34,270 >> Lassen Sie uns nun dieses Programm zu kompilieren. 50 00:02:34,270 --> 00:02:36,500 Machen Sie ein hallo. 51 00:02:36,500 --> 00:02:39,570 Oh meine Güte, fünf Fehler erzeugt, und mein Programm 52 00:02:39,570 --> 00:02:41,100 nur sieben Zeilen lang. 53 00:02:41,100 --> 00:02:44,720 Nun, wie immer, nicht auf dem letzten Blick der Fehler auf dem Bildschirm. 54 00:02:44,720 --> 00:02:47,960 Sehen Sie in der ersten, weil vielleicht gibt es einen Dominoeffekt, wodurch 55 00:02:47,960 --> 00:02:51,600 nur eine Fehler bis oben erstellt die Auftreten von Fehlern als es 56 00:02:51,600 --> 00:02:52,570 tatsächlich sind. 57 00:02:52,570 --> 00:02:56,620 >> Also lassen Sie mich nach oben, und der erste derartige Fettdruck Fehler hier ist die Verwendung von 58 00:02:56,620 --> 00:02:59,140 deklarierter Bezeichner-String. 59 00:02:59,140 --> 00:03:00,630 Meinten Sie Standard? 60 00:03:00,630 --> 00:03:01,990 Also nein, habe ich nicht. 61 00:03:01,990 --> 00:03:06,700 Ich habe meine Schnur, aber es stellt sich heraus, dass ich vergessen, dass String nicht als vorhanden 62 00:03:06,700 --> 00:03:10,830 Datentyp in C. technisch Konzeptionell es existiert, aber das Wort 63 00:03:10,830 --> 00:03:16,210 "String" existiert nur, weil die CS50 Personal haben sie erklärt, so zu sprechen, 64 00:03:16,210 --> 00:03:18,160 in einer Datei, die wir selbst geschrieben haben. 65 00:03:18,160 --> 00:03:22,540 In der Tat, so wie jemand vor langer Zeit , erklärte der printf-Funktion in einer Datei 66 00:03:22,540 --> 00:03:28,310 genannte Norm IO.H, so haben wir die Mitarbeiter erklären Zeichenfolge als Datentyp in 67 00:03:28,310 --> 00:03:32,470 Eine Datei, die keine Überraschung, heißt CS50.H. 68 00:03:32,470 --> 00:03:36,340 >> So gehen wir zurück an den Anfang meiner programmieren und informiert den Compiler, 69 00:03:36,340 --> 00:03:40,130 nicht nur ich wollen, um das Symbol zu verwenden String, möchte ich auch zu erziehen die 70 00:03:40,130 --> 00:03:42,160 Compiler auf, was das Symbol bedeutet. 71 00:03:42,160 --> 00:03:47,010 Und um das ganz einfach tun, ich kann gehen zurück bis zu einer Linie, legen Sie eine neue Zeile 72 00:03:47,010 --> 00:03:54,070 an und fügen ", gehören CS50.H" auch zwischen den spitzen Klammern. 73 00:03:54,070 --> 00:03:58,170 Diese Anweisung, so wie das jetzt auf der Linie zwei, wird sich informieren die 74 00:03:58,170 --> 00:04:02,460 Compiler, die es enthalten sollte der Inhalt CS50.H wo immer sie sind 75 00:04:02,460 --> 00:04:06,620 in meiner Festplatte im Inneren meines Programms, damit der Compiler die Aufklärung, um 76 00:04:06,620 --> 00:04:09,050 was von String gemeint ist. 77 00:04:09,050 --> 00:04:13,420 >> Lassen Sie mein Programm neu kompilieren nachdem die Änderungen gespeichert. 78 00:04:13,420 --> 00:04:15,500 Machen Sie ein hallo. 79 00:04:15,500 --> 00:04:16,440 Sie Enter. 80 00:04:16,440 --> 00:04:17,730 Viel besser. 81 00:04:17,730 --> 00:04:23,760 Jetzt habe ich eine blinkende Eingabeaufforderung, an der ich eingeben können, ". / hallo ein", und voila. 82 00:04:23,760 --> 00:04:25,010 Hallo David. 83 00:04:25,010 --> 00:04:26,402