1 00:00:00,000 --> 00:00:00,330 2 00:00:00,330 --> 00:00:03,230 >> ENCEINTE: Jusqu'à présent, dans les programmes que nous avons écrite, nous avons déclaré que principal 3 00:00:03,230 --> 00:00:04,940 int void main. 4 00:00:04,940 --> 00:00:07,600 Et tout ce temps, ce vide a simplement été précisant que la 5 00:00:07,600 --> 00:00:10,870 programme ne prend pas arguments de ligne de commande. 6 00:00:10,870 --> 00:00:14,180 En d'autres termes, lorsqu'un utilisateur exécute une programme, il ou elle peut assurer le commandement 7 00:00:14,180 --> 00:00:18,130 arguments de ligne en écrivant supplémentaires des mots ou des phrases après le programme de 8 00:00:18,130 --> 00:00:19,420 nom à l'invite. 9 00:00:19,420 --> 00:00:22,980 >> Eh bien, si vous ne voulez que votre programme prendre des arguments de ligne de commande, un ou 10 00:00:22,980 --> 00:00:26,960 plusieurs de ces mots, nous avons besoin de remplacer annuler avec un couple d'arguments. 11 00:00:26,960 --> 00:00:28,630 Alors faisons-le. 12 00:00:28,630 --> 00:00:32,170 Inclure CS50.h. 13 00:00:32,170 --> 00:00:35,760 Inclure io.h. norme 14 00:00:35,760 --> 00:00:40,830 Int, principal, et maintenant au lieu de vide, Je vais préciser un int appelé 15 00:00:40,830 --> 00:00:45,800 argc, et un tableau de chaînes appelés argv. 16 00:00:45,800 --> 00:00:48,240 >> Maintenant, argc et argv sont simplement conventions. 17 00:00:48,240 --> 00:00:50,530 Nous aurions pu appeler ces arguments plus tout ce que nous voulons. 18 00:00:50,530 --> 00:00:54,050 Mais ce qui est important, c'est que argc est un int, car, par définition, il est 19 00:00:54,050 --> 00:00:57,810 va contenir les chiffres de l'argument, le nombre de mots dans l'ensemble que 20 00:00:57,810 --> 00:00:59,830 utilisateur a tapé à son invite. 21 00:00:59,830 --> 00:01:04,310 >> Argv, quant à lui, l'argument vecteur, est va être en réalité un tableau de stockage 22 00:01:04,310 --> 00:01:08,460 tous les mots que l'utilisateur a tapé à son invite. 23 00:01:08,460 --> 00:01:10,920 Passons à faire quelque chose maintenant avec un ou plusieurs de ceux-ci 24 00:01:10,920 --> 00:01:12,090 arguments de ligne de commande. 25 00:01:12,090 --> 00:01:16,440 En particulier, nous allons aller de l'avant et d'impression Quelque soit le mot que l'utilisateur tape 26 00:01:16,440 --> 00:01:20,380 après le nom du programme à l'invite. 27 00:01:20,380 --> 00:01:26,940 >> Ouvrir support, support fermé, impression f, s pour cent, barre oblique inverse n, une virgule. 28 00:01:26,940 --> 00:01:30,930 Et maintenant, je dois dire que l'impression f valeur à brancher sur cet espace réservé. 29 00:01:30,930 --> 00:01:35,030 Je veux que le premier mot que l'utilisateur a tapé après le nom du programme. 30 00:01:35,030 --> 00:01:39,550 Et donc je vais préciser argv support 1, fermé 31 00:01:39,550 --> 00:01:41,250 parenthèses, point-virgule. 32 00:01:41,250 --> 00:01:43,710 >> Maintenant, pourquoi support 1 et non 0 support? 33 00:01:43,710 --> 00:01:47,410 Eh bien, il s'avère que, automatiquement mémorisées dans argv 0 va être l' 34 00:01:47,410 --> 00:01:49,040 Le véritable nom de programme. 35 00:01:49,040 --> 00:01:52,600 Ainsi, le premier mot que les types d'utilisateurs après le nom du programme est, par 36 00:01:52,600 --> 00:01:55,410 convention, va être stockée dans argv 1. 37 00:01:55,410 --> 00:01:58,800 >> Compilons maintenant et exécuter ce programme. 38 00:01:58,800 --> 00:02:08,080 Faire argv 0 point barre argv 0, et maintenant un mot comme bonjour, entrez. 39 00:02:08,080 --> 00:02:09,330 Et il nous l'avons, bonjour. 40 00:02:09,330 --> 00:02:11,332