1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:00,860 >> INTERLOCUTEUR 1: Très bien. 3 00:00:00,860 --> 00:00:03,260 Ce dernier programme a été un peu ennuyeux. 4 00:00:03,260 --> 00:00:05,510 Allons de l'avant et personnaliser ce un peu. 5 00:00:05,510 --> 00:00:07,710 Plutôt que de dire bonjour monde, pourquoi ne pas aller de l'avant 6 00:00:07,710 --> 00:00:09,680 et dire bonjour David? 7 00:00:09,680 --> 00:00:12,500 Eh bien, pour ce faire, je pouvais approcher ce dans un couple des manières. 8 00:00:12,500 --> 00:00:15,760 Je pourrais, bien sûr, le code juste difficile David, mais ce n'est pas tout ce qui 9 00:00:15,760 --> 00:00:17,650 fondamentalement différente dans la dernière version. 10 00:00:17,650 --> 00:00:21,430 Prenons donc un bond en avant, défaire que changer, et au lieu d'insérer un nouveau 11 00:00:21,430 --> 00:00:23,980 ligne de code où la ligne était une fois cinq. 12 00:00:23,980 --> 00:00:28,970 >> Plus précisément, ce que je vais faire ici est d'ajouter le nom de la chaîne, ce qui 13 00:00:28,970 --> 00:00:30,920 déclarer une variable. 14 00:00:30,920 --> 00:00:34,240 Notez que dans C, non seulement vous avez pour donner un nom d'une variable, dans lequel 15 00:00:34,240 --> 00:00:38,110 ce cas est le nom, vous avez également de préciser quel type il s'agit. 16 00:00:38,110 --> 00:00:41,970 Nous verrons d'autres types avant longtemps, entre eux des nombres entiers et à virgule flottante 17 00:00:41,970 --> 00:00:46,480 valeurs et plus, mais pour l'instant, chaîne est juste un mot ou une phrase, plus 18 00:00:46,480 --> 00:00:49,340 formellement, une séquence de zéro un ou plusieurs caractères. 19 00:00:49,340 --> 00:00:53,760 Donc pour le moment, cette ligne de cinq ans est disant: donnez-moi une variable appelée nom 20 00:00:53,760 --> 00:00:56,560 dont le type de données est une chaîne. 21 00:00:56,560 --> 00:01:00,460 >> Maintenant, je veux stocker une valeur là-dedans, et de le faire en C, nous utilisons le même 22 00:01:00,460 --> 00:01:03,030 signer, autrement connu comme le opérateur d'affectation. 23 00:01:03,030 --> 00:01:04,860 Je vais donc procéder comme suit. 24 00:01:04,860 --> 00:01:10,220 Égal entre guillemets, D-A-V-I-D, citation fermé, point-virgule. 25 00:01:10,220 --> 00:01:15,595 L'effet net en ligne cinq est maintenant à déclarer une chaîne, D-A-V-I-D, le stockage 26 00:01:15,595 --> 00:01:19,480 à partir du côté droit de cette expression dans la variable sur l' 27 00:01:19,480 --> 00:01:21,480 côté gauche de cette expression. 28 00:01:21,480 --> 00:01:25,970 Donc, à la fin de cette ligne, nous avons D-A-V-I-D stockée à l'intérieur d'une variable 29 00:01:25,970 --> 00:01:27,450 appelé nom. 30 00:01:27,450 --> 00:01:28,910 >> Maintenant, nous allons utiliser cette variable. 31 00:01:28,910 --> 00:01:35,010 Sur la ligne six, je vais remplacer monde avec un espace réservé. 32 00:01:35,010 --> 00:01:39,960 % S est défini selon l' documentation pour printf comme étant un 33 00:01:39,960 --> 00:01:41,690 espace réservé pour une chaîne. 34 00:01:41,690 --> 00:01:44,620 En d'autres termes, c'est un moyen d'informer printf que je vais mettre 35 00:01:44,620 --> 00:01:47,930 une autre valeur ici, mais permettez-moi vous dire dans un instant ce que 36 00:01:47,930 --> 00:01:49,180 ça va être. 37 00:01:49,180 --> 00:01:52,800 Maintenant, comment dois-je procéder pour dire printf ce que la valeur va être? 38 00:01:52,800 --> 00:01:56,850 >> Eh bien, je dois fournir printf avec un Le deuxième argument, et pour ce faire, je 39 00:01:56,850 --> 00:02:00,460 besoin de mettre une virgule après le premier de ces argument, qui a été cité ce 40 00:02:00,460 --> 00:02:04,990 chaîne, puis j'ai besoin de préciser ce valeur que je veux brancher que 41 00:02:04,990 --> 00:02:07,010 l'espace réservé de premier argument. 42 00:02:07,010 --> 00:02:10,880 Ainsi, le nom de ma variable est, de Bien sûr, le nom, il suffit de taper 43 00:02:10,880 --> 00:02:14,000 "Nom" que le deuxième l'argument à printf. 44 00:02:14,000 --> 00:02:15,070 Maintenant, ne vous méprenez pas. 45 00:02:15,070 --> 00:02:20,440 Même si il ya une virgule à l'intérieur de la chaîne entre guillemets, qui est en effet 46 00:02:20,440 --> 00:02:24,370 l'intérieur de la chaîne, il n'est pas si séparer un argument d'un autre. 47 00:02:24,370 --> 00:02:28,740 Seulement, cette virgule qui est en dehors de cette chaîne entre guillemets sépare effectivement 48 00:02:28,740 --> 00:02:31,700 Le premier argument de printf son deuxième argument. 49 00:02:31,700 --> 00:02:34,270 >> Compilons maintenant ce programme. 50 00:02:34,270 --> 00:02:36,500 Faire un bonjour. 51 00:02:36,500 --> 00:02:39,570 Oh mon Dieu, cinq erreurs générées, et mon programme 52 00:02:39,570 --> 00:02:41,100 seulement sept lignes. 53 00:02:41,100 --> 00:02:44,720 Eh bien, comme toujours, ne regardez pas la dernière des erreurs sur votre écran. 54 00:02:44,720 --> 00:02:47,960 Regardez le premier peut-être parce grâce à quoi il existe un effet de cascade de 55 00:02:47,960 --> 00:02:51,600 juste une erreur là-haut a créé le apparition de plus d'erreurs que il 56 00:02:51,600 --> 00:02:52,570 sont réellement. 57 00:02:52,570 --> 00:02:56,620 >> Permettez-moi de faire défiler vers le haut, et le premier de ces erreur en gras ici est l'utilisation de 58 00:02:56,620 --> 00:02:59,140 Chaîne d'identificateur non déclaré. 59 00:02:59,140 --> 00:03:00,630 Vouliez-vous dire standard? 60 00:03:00,630 --> 00:03:01,990 Eh bien non, je ne l'ai pas. 61 00:03:01,990 --> 00:03:06,700 Je n'ai chaîne moyenne, mais il s'avère que je oublié cette chaîne n'existe pas en tant que 62 00:03:06,700 --> 00:03:10,830 type de données techniquement en C. conceptuel il existe, mais le mot 63 00:03:10,830 --> 00:03:16,210 "String" n'existe que parce que le CS50 personnel ont déclaré, pour ainsi dire, 64 00:03:16,210 --> 00:03:18,160 dans un fichier que nous nous écrivions. 65 00:03:18,160 --> 00:03:22,540 En fait, juste comme quelqu'un depuis longtemps déclaré la fonction printf dans un fichier 66 00:03:22,540 --> 00:03:28,310 appelé standard IO.H, nous l'avons personnel déclarent chaîne comme un type de données dans 67 00:03:28,310 --> 00:03:32,470 un fichier qui, sans surprise, est appelé CS50.H. 68 00:03:32,470 --> 00:03:36,340 >> Donc, revenons au début de mon programmer et d'informer le compilateur que 69 00:03:36,340 --> 00:03:40,130 non seulement je veux utiliser le symbole chaîne, je tiens également à informer le 70 00:03:40,130 --> 00:03:42,160 compilateur sur ce que signifie ce symbole. 71 00:03:42,160 --> 00:03:47,010 Et pour ce faire, tout simplement, je peux aller retour à la ligne un, insérer une nouvelle ligne 72 00:03:47,010 --> 00:03:54,070 ici, et d'ajouter, "comprennent CS50.H" aussi entre chevrons. 73 00:03:54,070 --> 00:03:58,170 Cette instruction, beaucoup comme ça maintenant sur la ligne deux, va informer le 74 00:03:58,170 --> 00:04:02,460 compilateur qu'il doit inclure la contenu de CS50.H où qu'ils se trouvent 75 00:04:02,460 --> 00:04:06,620 dans mon disque dur à l'intérieur de mon programme, l'éducation ainsi que le compilateur à 76 00:04:06,620 --> 00:04:09,050 ce qu'on entend par chaîne. 77 00:04:09,050 --> 00:04:13,420 >> Disons recompiler mon programme après avoir sauvegardé les modifications. 78 00:04:13,420 --> 00:04:15,500 Faire un bonjour. 79 00:04:15,500 --> 00:04:16,440 Entrée. 80 00:04:16,440 --> 00:04:17,730 Beaucoup mieux. 81 00:04:17,730 --> 00:04:23,760 Maintenant, j'ai un message clignotant à qui je peut taper ". / bonjour un» et le tour est joué. 82 00:04:23,760 --> 00:04:25,010 Bonjour David. 83 00:04:25,010 --> 00:04:26,402